The MySQL@Oracle announced 5.7.3 development milestone release,
now available for download at dev.mysql.com. You can find the
full list of changes and bug fixes in the 5.7.3 Release Notes. One of the changes which
went in this milestone release was MAKE –REPLICATION-* FILTER SETTINGS DYNAMIC.
With this work the slave options –replicate-* can be changed
dynamically through the new command CHANGE REPLICATION FILTER.
These new options allow slave replication filters to be changed
while the server is running, without requiring a server stop and
restart.
This blog is intended to explain the design decision of choosing
a “new command” over “extending the existing SET command”.
Alternatives:
…
In MySQL Replication, users can filter statements either at
master (using --binlog-* startup options) or at the slave (using
--replicate-* startup options). Prior to MySQL-5.7.3, users could
set these filtering rules either through command line parameters
or by using my.cnf file. In either case MySQL server must be
restarted in order to change the filtering rules. It is not easy
to restart MySQL server in real time scenarios (because of
downtime issues and also loss of buffer cache resulting in
performance problems). It is always helpful having a way to
dynamically configure these filtering rules. Particularly in
environments where slaves are configured dynamically to replicate
certain databases or tables based on load and usage.
In MySQL-5.7.3, a new command "CHANGE REPLICATION FILTER"
has been introduced through which users can change the *slave*
side replication filters dynamically without the need for
restarting the …