This year at the Percona Live open source database conference, I will present a talk on the latest replication features in MySQL 8.0.
It was a huge amount of work to get the MySQL Group Replication plugin out with MySQL 5.7.17. Group Replication is a new plugin that gives the user some nice replication properties by resorting to group communication and state machine replication. This makes the system able to protect data against split brain situations, enables fault-tolerance and high availability, and provides coordination between servers committing transactions that change the data.
In addition to Group Replication, the team has also invested quite a bit on core replication features. Some of these features were already released, and others will be released at some point in time in a MySQL Development Milestone Release (DMR).
In the first 8.0 DMR (MySQL 8.0.0), replication has better instrumentation for row-based replication. The user can observe the row-based replication applier progress by querying performance schema tables. There is also an enhanced global transaction identifier (GTID).
And the user can now specify the stop condition when starting the relay logapplier, even if there are multiple applier threads started.
The recently released second DMR, MySQL 8.0.1, adds a long list of new replication features as well. All these features combined are of great help, since they reduce operations overhead through automation, better observability and coordination between servers. Work continues on many fronts: performance, availability, scalability, efficiency and observability.
The replication features in MySQL 8.0 take some of the operations burdens from the DBA. Moreover, they allow the user to better observe what is happening inside the replication pipeline. This alone is quite interesting since DBAs need to make decisions both when designing new deployments and when tackling issues, possibly having to meet very tight deadlines.
While our session is primarily about the shiny new replication features already in MySQL 8, there is another takeaway. Part of the session is dedicated to presenting the overall ideas around MySQL replication. So attendees will get an overview of the roadmap, and will be able to participate and provide feedback along the way. They will learn more about the big picture, and we will bring together some of the hot MySQL technologies that we keep hearing about nowadays: group replication, InnoDB clusters, multi-threaded replication and more!
It will be fun. Go MySQL!