# # This is an auxiliar script that sets the binlog-row-image # on a set of connections. These connections are passed as # a parameter to this script. Its format is the following: # # :[:...] # # In detail: # # conid -- connection id (eg, master) # value -- binlog_row_image value to set (eg, FULL) # Y_or_N -- Issue stop and start slave (eg, Y) # # Sample usage: # # -- let $row_img_set=master:FULL:N,slave:MINIMAL:Y # -- source include/rpl_row_img_set.inc # # Notes: # # 1. This script saves and restores the original connection that was # in use at the time it was included. -- let $old_conn= $CURRENT_CONNECTION while (`SELECT HEX('$row_img_set') != HEX('')`) { -- let $tuple= `SELECT SUBSTRING_INDEX('$row_img_set', ',', 1)` -- let $conn= `SELECT SUBSTRING_INDEX('$tuple', ':', 1)` -- let $rimg= `SELECT SUBSTRING_INDEX(LTRIM(SUBSTRING('$tuple', LENGTH('$conn') + 2)), ':', 1)` -- let $is_slave_restart= `SELECT LTRIM(SUBSTRING('$tuple', LENGTH('$conn') + LENGTH('$rimg')+ 3))` -- echo CON: '$conn', IMG: '$rimg', RESTART SLAVE: '$is_slave_restart' -- connection $conn -- eval SET SESSION binlog_row_image= '$rimg' -- eval SET GLOBAL binlog_row_image= '$rimg' if ($is_slave_restart == Y) { -- source include/stop_slave.inc -- source include/start_slave.inc } FLUSH TABLES; SHOW VARIABLES LIKE 'binlog_row_image'; -- let $row_img_set= `SELECT LTRIM(SUBSTRING('$row_img_set', LENGTH('$tuple') + 2 ))` } -- connection $old_conn