mirror of
https://github.com/MariaDB/server.git
synced 2025-01-24 15:54:37 +01:00
220acb328e
CREATE DATABASE statement used the current database instead of the database created when checking conditions for replication. CREATE/DROP/ALTER DATABASE statements are now replicated based on the manipulated database. mysql-test/t/rpl_until.test: Longer sleep to allow slave to stop. mysql-test/t/rpl_charset.test: Position change in binary file. mysql-test/r/drop_temp_table.result: Position change in binlog. mysql-test/r/rpl_loaddata_rule_m.result: Position change in binlog. mysql-test/r/rpl_charset.result: Position change in binlog. sql/log_event.h: Added new flag and parameter to suppress generation of USE statements. sql/log_event.cc: Added parameter and code to suppress generation of USE statements. sql/sql_db.cc: Suppress generation of USE before CREATE/ALTER/DROP DATABASE statements. sql/log.cc: Query_log_event have new extra parameter. sql/sql_table.cc: Query_log_event have new extra parameter. sql/sql_base.cc: Query_log_event have new extra parameter. sql/sql_update.cc: Query_log_event have new extra parameter. sql/sql_insert.cc: Query_log_event have new extra parameter. sql/sql_rename.cc: Query_log_event have new extra parameter. sql/sql_delete.cc: Query_log_event have new extra parameter. sql/sql_acl.cc: Query_log_event have new extra parameter. sql/handler.cc: Query_log_event have new extra parameter. sql/item_func.cc: Query_log_event have new extra parameter. sql/sql_parse.cc: Query_log_event have new extra parameter.
68 lines
1.8 KiB
Text
68 lines
1.8 KiB
Text
#
|
|
# Tests for replication of statements that manipulate databases.
|
|
#
|
|
# For this test file, we have a number of databases. All databases
|
|
# with "greek" names will be replicated on the slave, while other names
|
|
# (e.g., american) will not be replicated.
|
|
#
|
|
|
|
source include/master-slave.inc;
|
|
|
|
# Bug#6391 (binlog-do-db rules ignored)
|
|
# In this case, 'mysqltest_bob' should not be replicated to the slave.
|
|
--disable_warnings
|
|
DROP DATABASE IF EXISTS mysqltest_prometheus;
|
|
DROP DATABASE IF EXISTS mysqltest_sisyfos;
|
|
DROP DATABASE IF EXISTS mysqltest_bob;
|
|
sync_slave_with_master;
|
|
# This database is not replicated
|
|
DROP DATABASE IF EXISTS mysqltest_bob;
|
|
--enable_warnings
|
|
|
|
connection master;
|
|
CREATE DATABASE mysqltest_prometheus;
|
|
CREATE DATABASE mysqltest_sisyfos;
|
|
CREATE DATABASE mysqltest_bob;
|
|
|
|
USE mysqltest_sisyfos;
|
|
# These should be replicated
|
|
CREATE TABLE t1 (b int);
|
|
INSERT INTO t1 VALUES(1);
|
|
|
|
USE mysqltest_bob;
|
|
# These should *not* be replicated
|
|
CREATE TABLE t2 (b int);
|
|
INSERT INTO t2 VALUES(2);
|
|
|
|
# Current database is now 'mysqltest_bob'
|
|
# The following should be replicated
|
|
ALTER DATABASE mysqltest_sisyfos CHARACTER SET latin1;
|
|
|
|
USE mysqltest_sisyfos;
|
|
# The following should *not* be replicated
|
|
ALTER DATABASE mysqltest_bob CHARACTER SET latin1;
|
|
|
|
SHOW DATABASES;
|
|
sync_slave_with_master;
|
|
SHOW DATABASES;
|
|
|
|
connection master;
|
|
DROP DATABASE IF EXISTS mysqltest_sisyfos;
|
|
USE mysqltest_prometheus;
|
|
CREATE TABLE t1 (a INT);
|
|
INSERT INTO t1 VALUES (1);
|
|
CREATE DATABASE mysqltest_sisyfos;
|
|
USE mysqltest_sisyfos;
|
|
CREATE TABLE t2 (a INT);
|
|
SHOW BINLOG EVENTS;
|
|
SHOW DATABASES;
|
|
sync_slave_with_master;
|
|
SHOW DATABASES;
|
|
SHOW CREATE TABLE mysqltest_prometheus.t1;
|
|
SHOW CREATE TABLE mysqltest_sisyfos.t2;
|
|
|
|
connection master;
|
|
DROP DATABASE IF EXISTS mysqltest_prometheus;
|
|
DROP DATABASE IF EXISTS mysqltest_sisyfos;
|
|
DROP DATABASE IF EXISTS mysqltest_bob;
|
|
sync_slave_with_master;
|