mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
2fdb556e04
This patch changes the main name of 3 byte character set from utf8 to utf8mb3. New old_mode UTF8_IS_UTF8MB3 is added and set TRUE by default, so that utf8 would mean utf8mb3. If not set, utf8 would mean utf8mb4.
153 lines
5.4 KiB
Text
153 lines
5.4 KiB
Text
call mtr.add_suppression("Invalid .old.. table or database name");
|
|
drop database if exists `mysqltest1`;
|
|
drop database if exists `mysqltest-1`;
|
|
drop database if exists `#mysql50#mysqltest-1`;
|
|
create database `mysqltest1`;
|
|
create database `#mysql50#mysqltest-1`;
|
|
create table `mysqltest1`.`t1` (a int);
|
|
create table `mysqltest1`.`#mysql50#t-1` (a int);
|
|
create table `#mysql50#mysqltest-1`.`t1` (a int);
|
|
create table `#mysql50#mysqltest-1`.`#mysql50#t-1` (a int);
|
|
show create database `mysqltest1`;
|
|
Database Create Database
|
|
mysqltest1 CREATE DATABASE `mysqltest1` /*!40100 DEFAULT CHARACTER SET latin1 */
|
|
show create database `mysqltest-1`;
|
|
ERROR 42000: Unknown database 'mysqltest-1'
|
|
show create database `#mysql50#mysqltest-1`;
|
|
Database Create Database
|
|
#mysql50#mysqltest-1 CREATE DATABASE `#mysql50#mysqltest-1` /*!40100 DEFAULT CHARACTER SET latin1 */
|
|
show tables in `mysqltest1`;
|
|
Tables_in_mysqltest1
|
|
#mysql50#t-1
|
|
t1
|
|
show tables in `#mysql50#mysqltest-1`;
|
|
Tables_in_#mysql50#mysqltest-1
|
|
#mysql50#t-1
|
|
t1
|
|
show create database `mysqltest1`;
|
|
Database Create Database
|
|
mysqltest1 CREATE DATABASE `mysqltest1` /*!40100 DEFAULT CHARACTER SET latin1 */
|
|
show create database `mysqltest-1`;
|
|
Database Create Database
|
|
mysqltest-1 CREATE DATABASE `mysqltest-1` /*!40100 DEFAULT CHARACTER SET latin1 */
|
|
show create database `#mysql50#mysqltest-1`;
|
|
ERROR 42000: Unknown database '#mysql50#mysqltest-1'
|
|
show tables in `mysqltest1`;
|
|
Tables_in_mysqltest1
|
|
t-1
|
|
t1
|
|
show tables in `mysqltest-1`;
|
|
Tables_in_mysqltest-1
|
|
t-1
|
|
t1
|
|
drop database `mysqltest1`;
|
|
drop database `mysqltest-1`;
|
|
create table `txu#p#p1` (s1 int);
|
|
insert into `txu#p#p1` values (1);
|
|
select * from `txu@0023p@0023p1`;
|
|
ERROR 42S02: Table 'test.txu@0023p@0023p1' doesn't exist
|
|
create table `txu@0023p@0023p1` (s1 int);
|
|
show tables;
|
|
Tables_in_test
|
|
txu#p#p1
|
|
txu@0023p@0023p1
|
|
insert into `txu@0023p@0023p1` values (2);
|
|
select * from `txu@0023p@0023p1`;
|
|
s1
|
|
2
|
|
select * from `txu#p#p1`;
|
|
s1
|
|
1
|
|
drop table `txu#p#p1`;
|
|
drop table `txu@0023p@0023p1`;
|
|
#
|
|
# Bug#37631 Incorrect key file for table after upgrading from 5.0 to 5.1
|
|
#
|
|
# copy table created using mysql4.0 into the data dir
|
|
# check the table created using mysql 4.0
|
|
CHECK TABLE t1;
|
|
Table Op Msg_type Msg_text
|
|
test.t1 check error Upgrade required. Please do "REPAIR TABLE `t1`" or dump/reload to fix it!
|
|
# query the table created using mysql 4.0
|
|
SELECT * FROM t1;
|
|
c1 c2 c3
|
|
DROP TABLE t1;
|
|
truncate t1;
|
|
drop table t1;
|
|
drop database if exists `tabc`;
|
|
drop database if exists `a-b-c`;
|
|
create database `tabc` default character set latin2;
|
|
create table tabc.t1 (a int);
|
|
FLUSH TABLES;
|
|
show databases like '%a-b-c%';
|
|
Database (%a-b-c%)
|
|
#mysql50#a-b-c
|
|
ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME;
|
|
show databases like '%a-b-c%';
|
|
Database (%a-b-c%)
|
|
a-b-c
|
|
show create database `a-b-c`;
|
|
Database Create Database
|
|
a-b-c CREATE DATABASE `a-b-c` /*!40100 DEFAULT CHARACTER SET latin2 */
|
|
show tables in `a-b-c`;
|
|
Tables_in_a-b-c
|
|
t1
|
|
show create table `a-b-c`.`t1`;
|
|
Table Create Table
|
|
t1 CREATE TABLE `t1` (
|
|
`a` int(11) DEFAULT NULL
|
|
) ENGINE=MyISAM DEFAULT CHARSET=latin2
|
|
drop database `a-b-c`;
|
|
drop database `tabc`;
|
|
use `#mysql50#a-b-c`;
|
|
create table t1(f1 char(10));
|
|
show databases like '%a-b-c%';
|
|
Database (%a-b-c%)
|
|
#mysql50#a-b-c
|
|
ALTER DATABASE `#mysql50#a-b-c` UPGRADE DATA DIRECTORY NAME;
|
|
show databases like '%a-b-c%';
|
|
Database (%a-b-c%)
|
|
a-b-c
|
|
show create view `a-b-c`.v1;
|
|
View Create View character_set_client collation_connection
|
|
v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS select `a`.`f1` AS `f1` from (`a-b-c`.`t1` `a` join `information_schema`.`tables` `b`) where convert(`a`.`f1` using utf8mb3) = `b`.`TABLE_NAME` utf8mb3 utf8mb3_general_ci
|
|
select * from `a-b-c`.v1;
|
|
f1
|
|
drop database `a-b-c`;
|
|
use test;
|
|
# End of 5.0 tests
|
|
#
|
|
# Bug #53804: serious flaws in the alter database .. upgrade data
|
|
# directory name command
|
|
#
|
|
ALTER DATABASE `#mysql50#:` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Unknown database '#mysql50#:'
|
|
ALTER DATABASE `#mysql50#.` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#.'
|
|
ALTER DATABASE `#mysql50#../` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#../'
|
|
ALTER DATABASE `#mysql50#../..` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#../..'
|
|
ALTER DATABASE `#mysql50#../../` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#../../'
|
|
ALTER DATABASE `#mysql50#./blablabla` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#./blablabla'
|
|
ALTER DATABASE `#mysql50#../blablabla` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#../blablabla'
|
|
ALTER DATABASE `#mysql50#/` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#/'
|
|
ALTER DATABASE `#mysql50#/.` UPGRADE DATA DIRECTORY NAME;
|
|
ERROR 42000: Incorrect database name '#mysql50#/.'
|
|
USE `#mysql50#.`;
|
|
ERROR 42000: Incorrect database name '#mysql50#.'
|
|
USE `#mysql50#../blablabla`;
|
|
ERROR 42000: Incorrect database name '#mysql50#../blablabla'
|
|
show full tables;
|
|
Tables_in_test Table_type
|
|
#mysql50#ltoriaeinnovacionendesarrolloempres#9120761097220077376#cio_com BASE TABLE
|
|
rename table `#mysql50#ltoriaeinnovacionendesarrolloempres#9120761097220077376#cio_com` to `ltoriaeinnovacionendesarrolloempres#9120761097220077376#cio_com`;
|
|
show full tables;
|
|
Tables_in_test Table_type
|
|
ltoriaeinnovacionendesarrolloempres#9120761097220077376#cio_com BASE TABLE
|
|
drop table `ltoriaeinnovacionendesarrolloempres#9120761097220077376#cio_com`;
|
|
# End of 5.1 tests
|