-- source include/have_binlog_format_row.inc # # Reset master to cleanup binlog # reset master; # # Write different events to binlog # create table t1 (a int); insert into t1 values (1); insert into t1 values (2); insert into t1 values (3); update t1 set a=a+2 where a=2; update t1 set a=a+2 where a=3; create table t2 (word varchar(20)); load data infile '../../std_data/words.dat' into table t2; # # Save binlog # let $MYSQLD_DATADIR=`select @@datadir`; flush logs; --exec $MYSQL_BINLOG --hexdump $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/mysqlbinlog_base64.sql # # Clear database and restore from binlog # drop table t1; drop table t2; --exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/mysqlbinlog_base64.sql # # Verify that all binlog events have been executed # select * from t1; select * from t2; # # Verify that events larger than the default IO_CACHE buffer # are handled correctly (BUG#25628). # flush logs; drop table t2; create table t2 (word varchar(20)); load data infile '../../std_data/words.dat' into table t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; insert into t2 select * from t2; select count(*) from t2; flush logs; --exec $MYSQL_BINLOG --hexdump $MYSQLD_DATADIR/master-bin.000003 > $MYSQLTEST_VARDIR/tmp/mysqlbinlog_base64.sql --exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/mysqlbinlog_base64.sql # # Verify that all binlog events have been executed # select count(*) from t2; # # Test cleanup # --remove_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog_base64.sql drop table t1; drop table t2;