stop slave; drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; reset master; reset slave; drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9; start slave; ---Setup Section -- set timestamp=1000000000; DROP TABLE IF EXISTS t1,t2,t3; CREATE TABLE t1(word VARCHAR(20)); CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY); CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT); ---Test1 check table load -- SELECT COUNT(*) from t1; COUNT(*) 351 SELECT COUNT(*) from t2; COUNT(*) 500 SELECT COUNT(*) from t3; COUNT(*) 500 SELECT * FROM t1 ORDER BY word LIMIT 5; word Aarhus Aarhus Aarhus Aarhus Aarhus SELECT * FROM t2 ORDER BY id LIMIT 5; id 1 2 3 4 5 SELECT c1, c3, c4, c5 FROM t3 ORDER BY c1 LIMIT 5; c1 c3 c4 c5 1 2006-02-22 00:00:00 Tested in Texas 2.2 2 2006-02-22 00:00:00 Tested in Texas 4.4 3 2006-02-22 00:00:00 Tested in Texas 6.6 4 2006-02-22 00:00:00 Tested in Texas 8.8 5 2006-02-22 00:00:00 Tested in Texas 11 SELECT COUNT(*) from t1; COUNT(*) 351 SELECT COUNT(*) from t2; COUNT(*) 500 SELECT COUNT(*) from t3; COUNT(*) 500 SELECT * FROM t1 ORDER BY word LIMIT 5; word Aarhus Aarhus Aarhus Aarhus Aarhus SELECT * FROM t2 ORDER BY id LIMIT 5; id 1 2 3 4 5 SELECT c1, c3, c4, c5 FROM t3 ORDER BY c1 LIMIT 5; c1 c3 c4 c5 1 2006-02-22 00:00:00 Tested in Texas 2.2 2 2006-02-22 00:00:00 Tested in Texas 4.4 3 2006-02-22 00:00:00 Tested in Texas 6.6 4 2006-02-22 00:00:00 Tested in Texas 8.8 5 2006-02-22 00:00:00 Tested in Texas 11 insert into t1 values ("Alas"); flush logs; --- Test 1 Dump binlog to file -- --- Test 1 delete tables, clean master and slave -- DROP TABLE t1; DROP TABLE t2; DROP TABLE t3; stop slave; reset master; reset slave; start slave; --- Test 1 Load from Dump binlog file -- --- Test 1 Check Load Results -- SELECT COUNT(*) from t1; COUNT(*) 352 SELECT COUNT(*) from t2; COUNT(*) 500 SELECT COUNT(*) from t3; COUNT(*) 500 SELECT * FROM t1 ORDER BY word LIMIT 5; word Aarhus Aarhus Aarhus Aarhus Aarhus SELECT * FROM t2 ORDER BY id LIMIT 5; id 1 2 3 4 5 SELECT c1, c3, c4, c5 FROM t3 ORDER BY c1 LIMIT 5; c1 c3 c4 c5 1 2006-02-22 00:00:00 Tested in Texas 2.2 2 2006-02-22 00:00:00 Tested in Texas 4.4 3 2006-02-22 00:00:00 Tested in Texas 6.6 4 2006-02-22 00:00:00 Tested in Texas 8.8 5 2006-02-22 00:00:00 Tested in Texas 11 SELECT COUNT(*) from t1; COUNT(*) 352 SELECT COUNT(*) from t2; COUNT(*) 500 SELECT COUNT(*) from t3; COUNT(*) 500 SELECT * FROM t1 ORDER BY word LIMIT 5; word Aarhus Aarhus Aarhus Aarhus Aarhus SELECT * FROM t2 ORDER BY id LIMIT 5; id 1 2 3 4 5 SELECT c1, c3, c4, c5 FROM t3 ORDER BY c1 LIMIT 5; c1 c3 c4 c5 1 2006-02-22 00:00:00 Tested in Texas 2.2 2 2006-02-22 00:00:00 Tested in Texas 4.4 3 2006-02-22 00:00:00 Tested in Texas 6.6 4 2006-02-22 00:00:00 Tested in Texas 8.8 5 2006-02-22 00:00:00 Tested in Texas 11 --- Test 2 position test -- /*!40019 SET @@session.max_insert_delayed_threads=0*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; use test; SET TIMESTAMP=1000000000; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1; SET @@session.sql_mode=0; /*!\C latin1 */; SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8; CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT); # End of log file ROLLBACK /* added by mysqlbinlog */; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; --- Test 3 First Remote test -- /*!40019 SET @@session.max_insert_delayed_threads=0*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; ROLLBACK; use test; SET TIMESTAMP=1000000000; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1; SET @@session.sql_mode=0; /*!\C latin1 */; SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8; DROP TABLE IF EXISTS t1,t2,t3; SET TIMESTAMP=1000000000; CREATE TABLE t1(word VARCHAR(20)); SET TIMESTAMP=1000000000; CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY); SET TIMESTAMP=1000000000; CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT); # End of log file ROLLBACK /* added by mysqlbinlog */; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; --- Test 5 LOAD DATA -- /*!40019 SET @@session.max_insert_delayed_threads=0*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; # End of log file ROLLBACK /* added by mysqlbinlog */; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; --- Test 6 reading stdin -- /*!40019 SET @@session.max_insert_delayed_threads=0*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; ROLLBACK; use test; SET TIMESTAMP=1000000000; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1; SET @@session.sql_mode=0; /*!\C latin1 */; SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8; DROP TABLE IF EXISTS t1,t2,t3; SET TIMESTAMP=1000000000; CREATE TABLE t1(word VARCHAR(20)); SET TIMESTAMP=1000000000; CREATE TABLE t2(id INT AUTO_INCREMENT NOT NULL PRIMARY KEY); SET TIMESTAMP=1000000000; CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT); # End of log file ROLLBACK /* added by mysqlbinlog */; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; --- Test 7 reading stdin w/position -- /*!40019 SET @@session.max_insert_delayed_threads=0*/; /*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/; use test; SET TIMESTAMP=1000000000; SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=1, @@session.unique_checks=1; SET @@session.sql_mode=0; /*!\C latin1 */; SET @@session.character_set_client=8,@@session.collation_connection=8,@@session.collation_server=8; CREATE TABLE t3(c1 INT NOT NULL PRIMARY KEY, c2 LONGBLOB, c3 TIMESTAMP, c4 TEXT, c5 FLOAT); # End of log file ROLLBACK /* added by mysqlbinlog */; /*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/; --- Test 8 switch internal charset -- stop slave; reset master; reset slave; start slave; create table t4 (f text character set utf8); create table t5 (f text character set cp932); flush logs; rename table t4 to t04, t5 to t05; select HEX(f) from t04; HEX(f) E382BD select HEX(f) from t4; HEX(f) E382BD select HEX(f) from t05; HEX(f) 835C select HEX(f) from t5; HEX(f) 835C select HEX(f) from t04; HEX(f) E382BD select HEX(f) from t4; HEX(f) E382BD select HEX(f) from t05; HEX(f) 835C select HEX(f) from t5; HEX(f) 835C --- Test cleanup -- DROP TABLE IF EXISTS t1, t2, t3, t04, t05, t4, t5;