source include/master-slave.inc; connection master; create table t2 (n int); create temporary table t1 (n int); insert into t1 values(1),(2),(3); insert into t2 select * from t1; create temporary table t3 (n int not null); alter table t3 add primary key(n); flush logs; insert into t3 values (100); insert into t2 select * from t3; drop table if exists t3; insert into t2 values (101); connection master1; create temporary table t1 (n int); insert into t1 values (4),(5); insert into t2 select * from t1; save_master_pos; disconnect master; connection slave; #add 1 to the saved position, so we will catch drop table on disconnect #for sure sync_with_master 1; connection master1; insert into t2 values(6); save_master_pos; disconnect master1; connection slave; #same trick - make sure we catch drop of temporary table on disconnect sync_with_master 1; select * from t2; show status like 'Slave_open_temp_tables'; # # Clean up # connect (master2,localhost,root,,); connection master2; drop table if exists t1,t2; save_master_pos; connection slave; sync_with_master;