Here comes another MySQL release, and together with it, a set of new replication features. As usual, we would like to summarize them. And, also as usual, follow up blogs will provide further details.
- Configure Replication Applier to Require Row-based Replication only. Pedro Gomes has implemented functionality that allows the user to specify that for a given replication channel, it will only replicate from a server that is logging in ROW mode. This enables restricting the type of instructions executed on the secondary (a.k.a. slave). Thus by setting this option, the DBA, can among other things ensure that the applier on the secondary server shall not re-execute DMLs such as LOAD DATA and shall not have to deal with temporary tables. Further technical details can be found in the following worklog: WL#12968.
- Preserve commit order on the replication applier, even if binary log is disabled. Hemant Dangi has implemented support, in the replication applier, to enforce the transaction commit order as observed in the incoming relay logs, even if the replica has binary logging disabled. As such, the user can now set both slave-preserve-commit-order=TRUE and skip-log-bin and transactions shall be committed in the order that they were replicated in, even if the multi-threaded applier executed them in parallel all the way until the commit point. Find further technical details in WL#7846.
- TLSv1.3 configuration support for Replication Channels. Nuno Carvalho implemented support for configuring cipher suites through CHANGE MASTER and group replication recovery options. The user can now restrict cipher suites on the primary, and then configure the replication channels on the secondaries as well, ensuring that there is a matching TLSv1.3 configuration between the servers. Find further technical details in WL#13392.
That’s it. I hope you will have fun trying out the new replication features in MySQL 8.0.19 and as usual, feedback is always appreciated. Let us know by either commenting on this blog post or submitting a feature request or even a bug. Enjoy MySQL 8.0.19.