1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258
|
set binlog_format=statement;
RESET MASTER;
drop database if exists my_replicated_db;
call mtr.add_suppression("Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT");
create database my_replicated_db;
create table my_replicated_db.my_tx_table(a bigint) engine = innodb;
create table my_replicated_db.my_non_tx_table(a bigint) engine = myisam;
create table my_replicated_db.my_bh_table(a bigint) engine = blackhole;
use test;
drop table if exists marker_start;
Warnings:
Note 1051 Unknown table 'test.marker_start'
use my_replicated_db;
insert into my_tx_table(a)
values (1000), (2000), (3000);
insert into my_non_tx_table(a)
values (1000), (2000), (3000);
insert into my_bh_table(a)
values (1000), (2000), (3000);
use test;
drop table if exists marker_insert_select;
Warnings:
Note 1051 Unknown table 'test.marker_insert_select'
use my_replicated_db;
insert into my_tx_table(a)
select thread_id from performance_schema.threads;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_non_tx_table(a)
select thread_id from performance_schema.threads;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_bh_table(a)
select thread_id from performance_schema.threads;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_tx_table(a)
select id from information_schema.processlist;
insert into my_non_tx_table(a)
select id from information_schema.processlist;
insert into my_bh_table(a)
select id from information_schema.processlist;
insert into my_tx_table(a)
select thread_id from mysql.general_log;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_non_tx_table(a)
select thread_id from mysql.general_log;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_bh_table(a)
select thread_id from mysql.general_log;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_tx_table(a)
select thread_id from mysql.slow_log;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_non_tx_table(a)
select thread_id from mysql.slow_log;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_bh_table(a)
select thread_id from mysql.slow_log;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_tx_table(a)
select Relay_log_pos from mysql.slave_relay_log_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_non_tx_table(a)
select Relay_log_pos from mysql.slave_relay_log_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_bh_table(a)
select Relay_log_pos from mysql.slave_relay_log_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_tx_table(a)
select Master_log_pos from mysql.slave_master_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_non_tx_table(a)
select Master_log_pos from mysql.slave_master_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_bh_table(a)
select Master_log_pos from mysql.slave_master_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_tx_table(a)
select Relay_log_pos from mysql.slave_worker_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_non_tx_table(a)
select Relay_log_pos from mysql.slave_worker_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
insert into my_bh_table(a)
select Relay_log_pos from mysql.slave_worker_info;
Warnings:
Note 1592 Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. The statement is unsafe because it uses the general log, slow query log, or performance_schema table(s). This is unsafe because system tables may differ on slaves
use test;
drop table if exists marker_multi_update;
Warnings:
Note 1051 Unknown table 'test.marker_multi_update'
use my_replicated_db;
update my_tx_table, performance_schema.setup_instruments
set my_tx_table.a = my_tx_table.a + 1,
performance_schema.setup_instruments.timed= 'NO';
update my_non_tx_table, performance_schema.setup_instruments
set my_non_tx_table.a = my_non_tx_table.a + 1,
performance_schema.setup_instruments.timed= 'NO';
update my_bh_table, performance_schema.setup_instruments
set my_bh_table.a = my_bh_table.a + 1,
performance_schema.setup_instruments.timed= 'NO';
use test;
drop table if exists marker_multi_delete;
Warnings:
Note 1051 Unknown table 'test.marker_multi_delete'
use my_replicated_db;
insert into performance_schema.setup_actors
values ('FOO', 'FOO', 'FOO', 'YES', 'YES');
delete my_tx_table.*, performance_schema.setup_actors.*
from my_tx_table, performance_schema.setup_actors
where my_tx_table.a != 1000
or performance_schema.setup_actors.role='FOO';
insert into performance_schema.setup_actors
values ('BAR', 'BAR', 'BAR', 'YES', 'YES');
delete my_non_tx_table.*, performance_schema.setup_actors.*
from my_non_tx_table, performance_schema.setup_actors
where my_non_tx_table.a != 1000
or performance_schema.setup_actors.role='BAR';
insert into performance_schema.setup_actors
values ('BAZ', 'BAZ', 'BAZ', 'YES', 'YES');
delete my_bh_table.*, performance_schema.setup_actors.*
from my_bh_table, performance_schema.setup_actors
where my_bh_table.a != 1000
or performance_schema.setup_actors.role='BAZ';
use test;
drop table if exists marker_end;
Warnings:
Note 1051 Unknown table 'test.marker_end'
drop database my_replicated_db;
include/show_binlog_events.inc
Log_name Pos Event_type Server_id End_log_pos Info
master-bin.000001 # Query # # drop database if exists my_replicated_db
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `mtr`; INSERT INTO test_suppressions (pattern) VALUES ( NAME_CONST('pattern',_latin1'Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT' COLLATE 'latin1_swedish_ci'))
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # create database my_replicated_db
master-bin.000001 # Query # # use `test`; create table my_replicated_db.my_tx_table(a bigint) engine = innodb
master-bin.000001 # Query # # use `test`; create table my_replicated_db.my_non_tx_table(a bigint) engine = myisam
master-bin.000001 # Query # # use `test`; create table my_replicated_db.my_bh_table(a bigint) engine = blackhole
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `marker_start` /* generated by server */
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
values (1000), (2000), (3000)
master-bin.000001 # Xid # # COMMIT /* XID */
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
values (1000), (2000), (3000)
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
values (1000), (2000), (3000)
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `marker_insert_select` /* generated by server */
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select thread_id from performance_schema.threads
master-bin.000001 # Xid # # COMMIT /* XID */
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select thread_id from performance_schema.threads
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select thread_id from performance_schema.threads
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select id from information_schema.processlist
master-bin.000001 # Xid # # COMMIT /* XID */
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select id from information_schema.processlist
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select id from information_schema.processlist
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select thread_id from mysql.general_log
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select thread_id from mysql.general_log
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select thread_id from mysql.general_log
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select thread_id from mysql.slow_log
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select thread_id from mysql.slow_log
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select thread_id from mysql.slow_log
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select Relay_log_pos from mysql.slave_relay_log_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select Relay_log_pos from mysql.slave_relay_log_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select Relay_log_pos from mysql.slave_relay_log_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select Master_log_pos from mysql.slave_master_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select Master_log_pos from mysql.slave_master_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select Master_log_pos from mysql.slave_master_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_tx_table(a)
select Relay_log_pos from mysql.slave_worker_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_non_tx_table(a)
select Relay_log_pos from mysql.slave_worker_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # BEGIN
master-bin.000001 # Query # # use `my_replicated_db`; insert into my_bh_table(a)
select Relay_log_pos from mysql.slave_worker_info
master-bin.000001 # Query # # COMMIT
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `marker_multi_update` /* generated by server */
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `marker_multi_delete` /* generated by server */
master-bin.000001 # Query # # use `test`; DROP TABLE IF EXISTS `marker_end` /* generated by server */
master-bin.000001 # Query # # drop database my_replicated_db
truncate table performance_schema.setup_actors;
insert into performance_schema.setup_actors values ('%', '%', '%', 'YES', 'YES');
|