include/master-slave.inc [connection master] CREATE TABLE t1(id INT AUTO_INCREMENT, i INT, PRIMARY KEY (id)) ENGINE=INNODB; CREATE TABLE t2(id INT AUTO_INCREMENT, i INT, PRIMARY KEY (id)) ENGINE=INNODB; CREATE TRIGGER trig1 AFTER INSERT ON t1 FOR EACH ROW INSERT INTO t2(i) VALUES(new.i); START TRANSACTION; INSERT INTO t2(i) VALUES (1); ROLLBACK; INSERT INTO t1(i) VALUES(2); START TRANSACTION; LOCK TABLES t1 WRITE, t2 WRITE; INSERT INTO t1(i) VALUES(3); UNLOCK TABLES; COMMIT; connection slave; include/diff_tables.inc [master:t1, slave:t1] include/diff_tables.inc [master:t2, slave:t2] connection master; DROP TABLE t1,t2; CREATE TABLE t1(i INT) ENGINE=INNODB; CREATE TABLE t2(id INT AUTO_INCREMENT, i INT, PRIMARY KEY (id)) ENGINE=INNODB; INSERT INTO t1 values (1), (2), (3); START TRANSACTION; INSERT INTO t2(i) VALUES (1); ROLLBACK; INSERT INTO t2(i) SELECT i FROM t1; START TRANSACTION; LOCK TABLES t2 WRITE, t1 READ; INSERT INTO t2(i) SELECT i FROM t1; UNLOCK TABLES; COMMIT; connection slave; include/diff_tables.inc [master:t1, slave:t1] include/diff_tables.inc [master:t2, slave:t2] connection master; DROP TABLE t1,t2; CREATE TABLE t1(i int, id INT AUTO_INCREMENT, PRIMARY KEY (i, id)) ENGINE=MYISAM; INSERT INTO t1 (i) values (1); START TRANSACTION; LOCK TABLES t1 WRITE; INSERT INTO t1 (i) values (2); UNLOCK TABLES; COMMIT; connection slave; include/diff_tables.inc [master:t1, slave:t1] connection master; DROP TABLE t1; CREATE TABLE t1(i INT, j INT, UNIQUE KEY(i), UNIQUE KEY(j)) ENGINE=INNODB; INSERT INTO t1 (i,j) VALUES (1,2) ON DUPLICATE KEY UPDATE j=j+1; START TRANSACTION; LOCK TABLES t1 WRITE; INSERT INTO t1 (i,j) VALUES (1,2) ON DUPLICATE KEY UPDATE j=j+1; UNLOCK TABLES; COMMIT; connection slave; include/diff_tables.inc [master:t1, slave:t1] connection master; DROP TABLE t1; CREATE TABLE t1(i INT,PRIMARY KEY(i)) ENGINE=INNODB; CREATE TABLE t2(i INT,PRIMARY KEY(i)) ENGINE=INNODB; INSERT INTO t1 (i) VALUES (1),(2),(3),(4),(5); connect con1, localhost, root,; START TRANSACTION; SELECT i FROM t1 WHERE i=3 FOR UPDATE; i 3 connection master; INSERT INTO t2 SELECT i FROM t1 LOCK IN SHARE MODE SKIP LOCKED; CREATE TABLE t3 AS SELECT i FROM t1 LOCK IN SHARE MODE SKIP LOCKED; SELECT * FROM t2 ORDER BY i; i 1 2 4 5 SELECT * FROM t3 ORDER BY i; i 1 2 4 5 connection slave; include/diff_tables.inc [master:t2, slave:t2] include/diff_tables.inc [master:t3, slave:t3] disconnect con1; connection master; DROP TABLE t1, t2, t3; include/rpl_end.inc