MDEV-21376 mysqldump should support wildcards.
Now --wildcards (-L) option is supported by mysqldump. So user can specify patterns for database names or table names to dump.
This commit is contained in:
parent
e15904d564
commit
529b799c83
@ -133,7 +133,7 @@ static my_bool verbose= 0, opt_no_create_info= 0, opt_no_data= 0, opt_no_data_m
|
|||||||
opt_events= 0, opt_comments_used= 0,
|
opt_events= 0, opt_comments_used= 0,
|
||||||
opt_alltspcs=0, opt_notspcs= 0, opt_logging,
|
opt_alltspcs=0, opt_notspcs= 0, opt_logging,
|
||||||
opt_header=0, opt_update_history= 0,
|
opt_header=0, opt_update_history= 0,
|
||||||
opt_drop_trigger= 0, opt_dump_history= 0;
|
opt_drop_trigger= 0, opt_dump_history= 0, opt_wildcards= 0;
|
||||||
#define OPT_SYSTEM_ALL 1
|
#define OPT_SYSTEM_ALL 1
|
||||||
#define OPT_SYSTEM_USERS 2
|
#define OPT_SYSTEM_USERS 2
|
||||||
#define OPT_SYSTEM_PLUGINS 4
|
#define OPT_SYSTEM_PLUGINS 4
|
||||||
@ -327,8 +327,14 @@ static struct my_option my_long_options[] =
|
|||||||
"Include all MariaDB specific create options.",
|
"Include all MariaDB specific create options.",
|
||||||
&create_options, &create_options, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
|
&create_options, &create_options, 0, GET_BOOL, NO_ARG, 1, 0, 0, 0, 0, 0},
|
||||||
{"databases", 'B',
|
{"databases", 'B',
|
||||||
"Dump several databases. Note the difference in usage; in this case no tables are given. All name arguments are regarded as database names. 'USE db_name;' will be included in the output.",
|
"Dump several databases. Note the difference in usage; in this case no "
|
||||||
|
"tables are given. All name arguments are regarded as database names. "
|
||||||
|
"'USE db_name;' will be included in the output.",
|
||||||
&opt_databases, &opt_databases, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
&opt_databases, &opt_databases, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
|
{"wildcards", 'L', "Usage of wildcards in the table/database name. Without "
|
||||||
|
"option \"databases\" wildcards can be used only in tables names, "
|
||||||
|
"with option - in databases names.",
|
||||||
|
&opt_wildcards, &opt_wildcards, 0, GET_BOOL, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
#ifdef DBUG_OFF
|
#ifdef DBUG_OFF
|
||||||
{"debug", '#', "This is a non-debug version. Catch this and exit.",
|
{"debug", '#', "This is a non-debug version. Catch this and exit.",
|
||||||
0,0, 0, GET_DISABLED, OPT_ARG, 0, 0, 0, 0, 0, 0},
|
0,0, 0, GET_DISABLED, OPT_ARG, 0, 0, 0, 0, 0, 0},
|
||||||
@ -7334,6 +7340,96 @@ static void do_print_set_gtid_slave_pos(const char *set_gtid_pos,
|
|||||||
fprintf(md_result_file, "%s", set_gtid_pos);
|
fprintf(md_result_file, "%s", set_gtid_pos);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void dump_tables_for_database_wild(const char *db, const char *pattern)
|
||||||
|
{
|
||||||
|
int num= 1;
|
||||||
|
int number_of_tables= 0;
|
||||||
|
MYSQL_ROW row;
|
||||||
|
char buff[2*NAME_LEN+30];
|
||||||
|
MYSQL_RES *dbinfo;
|
||||||
|
char **tables_to_dump;
|
||||||
|
/* dbcopy - unquoted db; */
|
||||||
|
char dbcopy[2 * NAME_LEN + 30];
|
||||||
|
|
||||||
|
DBUG_ENTER("dump_tables_for_database_wild");
|
||||||
|
|
||||||
|
if (*db == '`')
|
||||||
|
{
|
||||||
|
size_t len = strlen(db);
|
||||||
|
memcpy(dbcopy, db + 1, len - 2);
|
||||||
|
dbcopy[len - 2] = 0;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
strncpy(dbcopy, db, NAME_LEN + 1);
|
||||||
|
}
|
||||||
|
my_snprintf(buff, sizeof(buff), "SHOW TABLES IN `%s` LIKE '%s'",
|
||||||
|
dbcopy, pattern);
|
||||||
|
if(mysql_query_with_error_report(mysql, &dbinfo, buff))
|
||||||
|
{
|
||||||
|
fprintf(stderr,
|
||||||
|
"%s: Error: '%s' when trying to find tables satisfying pattern\n",
|
||||||
|
my_progname_short, mysql_error(mysql));
|
||||||
|
DBUG_VOID_RETURN;
|
||||||
|
}
|
||||||
|
number_of_tables= dbinfo->row_count;
|
||||||
|
if (!(tables_to_dump= (char **) my_malloc(
|
||||||
|
PSI_NOT_INSTRUMENTED,
|
||||||
|
(number_of_tables + (int) 2) * sizeof(char *), MYF(MY_WME))))
|
||||||
|
die(EX_MYSQLERR, "Couldn't allocate memory");
|
||||||
|
tables_to_dump[0]= dbcopy;
|
||||||
|
while ((row= mysql_fetch_row(dbinfo)))
|
||||||
|
{
|
||||||
|
tables_to_dump[num++]= row[0];
|
||||||
|
}
|
||||||
|
tables_to_dump[num]= NULL;
|
||||||
|
if (number_of_tables > 0)
|
||||||
|
{
|
||||||
|
if (!opt_alltspcs && !opt_notspcs)
|
||||||
|
dump_tablespaces_for_tables(*tables_to_dump, (tables_to_dump + 1),
|
||||||
|
number_of_tables);
|
||||||
|
dump_selected_tables(*tables_to_dump, (tables_to_dump + 1),
|
||||||
|
number_of_tables);
|
||||||
|
}
|
||||||
|
my_free(tables_to_dump);
|
||||||
|
DBUG_VOID_RETURN;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/* pattern should be unquoted */
|
||||||
|
void dump_databases_wild(const char *db_pattern)
|
||||||
|
{
|
||||||
|
MYSQL_RES *dbinfo;
|
||||||
|
char buff[NAME_LEN+30];
|
||||||
|
MYSQL_ROW row;
|
||||||
|
int i= 0;
|
||||||
|
char **databases_to_dump;
|
||||||
|
DBUG_ENTER("dump_databases_wild");
|
||||||
|
my_snprintf(buff, sizeof(buff), "SHOW DATABASES LIKE '%s'", db_pattern);
|
||||||
|
if (mysql_query_with_error_report(mysql, &dbinfo, buff))
|
||||||
|
{
|
||||||
|
fprintf(stderr,
|
||||||
|
"%s: Error: '%s' when trying to find databases satisfying pattern\n",
|
||||||
|
my_progname_short, mysql_error(mysql));
|
||||||
|
DBUG_VOID_RETURN;
|
||||||
|
}
|
||||||
|
if (!(databases_to_dump= (char **) my_malloc(
|
||||||
|
PSI_NOT_INSTRUMENTED,
|
||||||
|
(dbinfo->row_count + (int) 1) * sizeof(char *), MYF(MY_WME))))
|
||||||
|
die(EX_MYSQLERR, "Couldn't allocate memory");
|
||||||
|
while ((row= mysql_fetch_row(dbinfo)))
|
||||||
|
{
|
||||||
|
databases_to_dump[i++]= row[0];
|
||||||
|
}
|
||||||
|
databases_to_dump[i]= NULL;
|
||||||
|
if (!opt_alltspcs && !opt_notspcs)
|
||||||
|
dump_tablespaces_for_databases(databases_to_dump);
|
||||||
|
dump_databases(databases_to_dump);
|
||||||
|
my_free(databases_to_dump);
|
||||||
|
DBUG_VOID_RETURN;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
int main(int argc, char **argv)
|
int main(int argc, char **argv)
|
||||||
{
|
{
|
||||||
char bin_log_name[FN_REFLEN];
|
char bin_log_name[FN_REFLEN];
|
||||||
@ -7498,19 +7594,36 @@ int main(int argc, char **argv)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (argc > 1 && !opt_databases)
|
if (opt_wildcards)
|
||||||
{
|
{
|
||||||
/* Only one database and selected table(s) */
|
if (argc > 1 && !opt_databases)
|
||||||
if (!opt_alltspcs && !opt_notspcs)
|
/* One database, tables matching the wildcard. */
|
||||||
dump_tablespaces_for_tables(*argv, (argv + 1), (argc - 1));
|
for (int i= 1; i < argc; i++)
|
||||||
dump_selected_tables(*argv, (argv + 1), (argc - 1));
|
dump_tables_for_database_wild(argv[0], argv[i]);
|
||||||
|
else if (argc > 0)
|
||||||
|
/* Databases matching the wildcard. */
|
||||||
|
for (int i= 0; i < argc; i++)
|
||||||
|
dump_databases_wild(argv[i]);
|
||||||
|
else
|
||||||
|
die(EX_CONSCHECK,
|
||||||
|
"Incorrect usage of patterns \n");
|
||||||
}
|
}
|
||||||
else if (argc > 0)
|
else
|
||||||
{
|
{
|
||||||
/* One or more databases, all tables */
|
if (argc > 1 && !opt_databases)
|
||||||
if (!opt_alltspcs && !opt_notspcs)
|
{
|
||||||
dump_tablespaces_for_databases(argv);
|
/* Only one database and selected table(s) */
|
||||||
dump_databases(argv);
|
if (!opt_alltspcs && !opt_notspcs)
|
||||||
|
dump_tablespaces_for_tables(*argv, (argv + 1), (argc - 1));
|
||||||
|
dump_selected_tables(*argv, (argv + 1), (argc - 1));
|
||||||
|
}
|
||||||
|
else if (argc > 0)
|
||||||
|
{
|
||||||
|
/* One or more databases, all tables */
|
||||||
|
if (!opt_alltspcs && !opt_notspcs)
|
||||||
|
dump_tablespaces_for_databases(argv);
|
||||||
|
dump_databases(argv);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -7017,3 +7017,598 @@ mariadb-dump: Error: path 'MYSQLTEST_VARDIR/tmp/mysql' exists, but it is not a d
|
|||||||
mariadb-dump: Path 'MYSQLTEST_VARDIR/tmp/dump' specified by option '--dir' is not a directory
|
mariadb-dump: Path 'MYSQLTEST_VARDIR/tmp/dump' specified by option '--dir' is not a directory
|
||||||
mariadb-dump: Path 'MYSQLTEST_VARDIR/does_not_exist' specified by option '--dir' does not exist
|
mariadb-dump: Path 'MYSQLTEST_VARDIR/does_not_exist' specified by option '--dir' does not exist
|
||||||
ALTER DATABASE test CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci;
|
ALTER DATABASE test CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci;
|
||||||
|
# MDEV-21376 mysqldump should support wildcards.
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE t2(a int);
|
||||||
|
INSERT INTO t2 VALUES (21),(52),(131);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS `t2`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t2` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t2` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t2` VALUES
|
||||||
|
(21),
|
||||||
|
(52),
|
||||||
|
(131);
|
||||||
|
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
DROP DATABASE test1;
|
||||||
|
#
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE t2(a int);
|
||||||
|
INSERT INTO t2 VALUES (21),(52),(131);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS `t2`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t2` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t2` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t2` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t2` VALUES
|
||||||
|
(21),
|
||||||
|
(52),
|
||||||
|
(131);
|
||||||
|
/*!40000 ALTER TABLE `t2` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
DROP DATABASE test1;
|
||||||
|
#
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE DATABASE test2;
|
||||||
|
USE test2;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
|
||||||
|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test1` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */;
|
||||||
|
|
||||||
|
USE `test1`;
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
|
||||||
|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test2` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */;
|
||||||
|
|
||||||
|
USE `test2`;
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
DROP DATABASE test1;
|
||||||
|
DROP DATABASE test2;
|
||||||
|
#
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE tt(a int);
|
||||||
|
INSERT INTO tt VALUES (2),(5),(11);
|
||||||
|
CREATE DATABASE test2;
|
||||||
|
USE test2;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
|
||||||
|
/*!40101 SET NAMES utf8mb4 */;
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
|
||||||
|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_uca1400_ai_ci */;
|
||||||
|
|
||||||
|
USE `test`;
|
||||||
|
|
||||||
|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test1` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */;
|
||||||
|
|
||||||
|
USE `test1`;
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS `tt`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `tt` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `tt` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `tt` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `tt` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `tt` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
|
||||||
|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ `test2` /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */;
|
||||||
|
|
||||||
|
USE `test2`;
|
||||||
|
DROP TABLE IF EXISTS `t1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `t1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES `t1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `t1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `t1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `t1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
|
||||||
|
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
|
||||||
|
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
DROP DATABASE test1;
|
||||||
|
DROP DATABASE test2;
|
||||||
|
#
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE table1(a int);
|
||||||
|
INSERT INTO table1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE tt(a int);
|
||||||
|
INSERT INTO tt VALUES (2),(5),(11);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
DROP TABLE IF EXISTS `table1`;
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE `table1` (
|
||||||
|
`a` int(11) DEFAULT NULL
|
||||||
|
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci;
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
LOCK TABLES `table1` WRITE;
|
||||||
|
/*!40000 ALTER TABLE `table1` DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO `table1` VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE `table1` ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
DROP DATABASE test1;
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# strange names
|
||||||
|
#
|
||||||
|
CREATE DATABASE `t?1`;
|
||||||
|
USE `t?1`;
|
||||||
|
CREATE TABLE `t?1`(a int);
|
||||||
|
INSERT INTO `t?1` VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE `t%t`(a int);
|
||||||
|
INSERT INTO `t%t` VALUES (2),(5),(11);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
DROP TABLE IF EXISTS "t?1";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t?1" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t?1" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t?1" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t?1" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t?1" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
CREATE DATABASE `t%*!`;
|
||||||
|
USE `t%*!`;
|
||||||
|
CREATE TABLE `t???1`(a int);
|
||||||
|
INSERT INTO `t???1` VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE `t___t`(a int);
|
||||||
|
INSERT INTO `t___t` VALUES (2),(5),(11);
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
DROP TABLE IF EXISTS "t???1";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t???1" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t???1" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t???1" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t???1" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t???1" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS "t___t";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t___t" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t___t" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t___t" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t___t" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t___t" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS "t%t";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t%t" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t%t" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t%t" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t%t" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t%t" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS "t?1";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t?1" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t?1" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t?1" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t?1" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t?1" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
DROP TABLE IF EXISTS "t___t";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t___t" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t___t" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t___t" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t___t" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t___t" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
/*M!999999\- enable the sandbox mode */
|
||||||
|
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
|
||||||
|
/*!40103 SET TIME_ZONE='+00:00' */;
|
||||||
|
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
|
||||||
|
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
|
||||||
|
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO,ANSI' */;
|
||||||
|
/*M!100616 SET @OLD_NOTE_VERBOSITY=@@NOTE_VERBOSITY, NOTE_VERBOSITY=0 */;
|
||||||
|
|
||||||
|
CREATE DATABASE /*!32312 IF NOT EXISTS*/ "t?1" /*!40100 DEFAULT CHARACTER SET latin1 COLLATE latin1_swedish_ci */;
|
||||||
|
|
||||||
|
USE "t?1";
|
||||||
|
DROP TABLE IF EXISTS "t%t";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t%t" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t%t" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t%t" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t%t" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t%t" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
DROP TABLE IF EXISTS "t?1";
|
||||||
|
/*!40101 SET @saved_cs_client = @@character_set_client */;
|
||||||
|
/*!40101 SET character_set_client = utf8mb4 */;
|
||||||
|
CREATE TABLE "t?1" (
|
||||||
|
"a" int(11) DEFAULT NULL
|
||||||
|
);
|
||||||
|
/*!40101 SET character_set_client = @saved_cs_client */;
|
||||||
|
|
||||||
|
LOCK TABLES "t?1" WRITE;
|
||||||
|
/*!40000 ALTER TABLE "t?1" DISABLE KEYS */;
|
||||||
|
set autocommit=0;
|
||||||
|
INSERT INTO "t?1" VALUES
|
||||||
|
(2),
|
||||||
|
(5),
|
||||||
|
(11);
|
||||||
|
/*!40000 ALTER TABLE "t?1" ENABLE KEYS */;
|
||||||
|
UNLOCK TABLES;
|
||||||
|
commit;
|
||||||
|
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
|
||||||
|
|
||||||
|
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
|
||||||
|
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
|
||||||
|
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
|
||||||
|
/*M!100616 SET NOTE_VERBOSITY=@OLD_NOTE_VERBOSITY */;
|
||||||
|
|
||||||
|
DROP DATABASE `t?1`;
|
||||||
|
DROP DATABASE `t%*!`;
|
||||||
|
@ -3146,3 +3146,96 @@ EOF
|
|||||||
--exec $MYSQL_DUMP --dir=$MYSQLTEST_VARDIR/does_not_exist mysql 2>&1
|
--exec $MYSQL_DUMP --dir=$MYSQLTEST_VARDIR/does_not_exist mysql 2>&1
|
||||||
|
|
||||||
--source include/test_db_charset_restore.inc
|
--source include/test_db_charset_restore.inc
|
||||||
|
|
||||||
|
--echo # MDEV-21376 mysqldump should support wildcards.
|
||||||
|
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE t2(a int);
|
||||||
|
INSERT INTO t2 VALUES (21),(52),(131);
|
||||||
|
--exec $MYSQL_DUMP --skip-comments --wildcards=ON test1 t_
|
||||||
|
--exec $MYSQL_DUMP --skip-comments --wildcards=ON test1 t? tx
|
||||||
|
DROP DATABASE test1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE t2(a int);
|
||||||
|
INSERT INTO t2 VALUES (21),(52),(131);
|
||||||
|
--exec $MYSQL_DUMP --skip-comments --wildcards=ON test1 t%
|
||||||
|
DROP DATABASE test1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE DATABASE test2;
|
||||||
|
USE test2;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
--exec $MYSQL_DUMP --skip-comments --databases --wildcards=ON test_
|
||||||
|
DROP DATABASE test1;
|
||||||
|
DROP DATABASE test2;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE tt(a int);
|
||||||
|
INSERT INTO tt VALUES (2),(5),(11);
|
||||||
|
CREATE DATABASE test2;
|
||||||
|
USE test2;
|
||||||
|
CREATE TABLE t1(a int);
|
||||||
|
INSERT INTO t1 VALUES (2),(5),(11);
|
||||||
|
--exec $MYSQL_DUMP --skip-comments --databases --wildcards=ON t%
|
||||||
|
DROP DATABASE test1;
|
||||||
|
DROP DATABASE test2;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE DATABASE test1;
|
||||||
|
USE test1;
|
||||||
|
CREATE TABLE table1(a int);
|
||||||
|
INSERT INTO table1 VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE tt(a int);
|
||||||
|
INSERT INTO tt VALUES (2),(5),(11);
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compact --opt -L test1 table1
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compact --opt -L test1 tab?e1
|
||||||
|
DROP DATABASE test1;
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
|
||||||
|
--echo #
|
||||||
|
--echo # strange names
|
||||||
|
--echo #
|
||||||
|
|
||||||
|
CREATE DATABASE `t?1`;
|
||||||
|
USE `t?1`;
|
||||||
|
CREATE TABLE `t?1`(a int);
|
||||||
|
INSERT INTO `t?1` VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE `t%t`(a int);
|
||||||
|
INSERT INTO `t%t` VALUES (2),(5),(11);
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compatible=ansi --skip-comments -L '`t?1`' 't%1'
|
||||||
|
CREATE DATABASE `t%*!`;
|
||||||
|
USE `t%*!`;
|
||||||
|
CREATE TABLE `t???1`(a int);
|
||||||
|
INSERT INTO `t???1` VALUES (2),(5),(11);
|
||||||
|
CREATE TABLE `t___t`(a int);
|
||||||
|
INSERT INTO `t___t` VALUES (2),(5),(11);
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compatible=ansi --skip-comments -L 't%'
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compatible=ansi --skip-comments -L '`t%*!`' 't?%1 '
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compatible=ansi --skip-comments -L '`t%*!`' 't?t' 't%t'
|
||||||
|
--exec $MYSQL_DUMP --default-character-set=utf8mb4 --compatible=ansi --skip-comments --databases -L 't%1'
|
||||||
|
DROP DATABASE `t?1`;
|
||||||
|
DROP DATABASE `t%*!`;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user