SET @global_saved_tmp = @@global.offline_mode; SET @global_autocommit = @@global.autocommit; SET @@global.autocommit= OFF; CREATE USER 'user1'@'localhost'; CREATE USER 'user2'@'localhost'; connect conu1,localhost,user1; START TRANSACTION; DROP TABLE IF EXISTS t2; CREATE TABLE t2 (c1 int,c2 char(10)); INSERT INTO t2 VALUES (1,'aaaaaaaaaa'); COMMIT; INSERT INTO t2 VALUES (2,'bbbbbbbbbb'); connect conu2,localhost,user2; START TRANSACTION; DROP TABLE IF EXISTS t1; CREATE TABLE t1 (c1 int,c2 char(10)); INSERT INTO t1 VALUES (1,'aaaaaaaaaa'); COMMIT; INSERT INTO t1 VALUES (2,'bbbbbbbbbb'); connection default; SET GLOBAL offline_mode = ON; SELECT COUNT(USER) FROM INFORMATION_SCHEMA.PROCESSLIST; COUNT(USER) 2 SET GLOBAL offline_mode = OFF; disconnect conu1; disconnect conu2; connect conu1,localhost,user1; SELECT * FROM t2 ORDER BY c1; c1 c2 1 aaaaaaaaaa DROP TABLE t2; connect conu2,localhost,user2; SELECT * FROM t1 ORDER BY c1; c1 c2 1 aaaaaaaaaa DROP TABLE t1; connection default; SET GLOBAL offline_mode = ON; SELECT COUNT(USER) FROM INFORMATION_SCHEMA.PROCESSLIST; COUNT(USER) 2 disconnect conu1; disconnect conu2; DROP USER 'user1'@'localhost'; DROP USER 'user2'@'localhost'; # Restoring the original values. SET @@global.offline_mode = @global_saved_tmp; SET @@global.autocommit= @global_autocommit;