MySQL 8 is shaping up quite nicely. And we are having a blast in the MySQL replication team while this is happening. We are continuously improving all-things-replication by introducing new and interesting features. In addition, we have been listening to our community and addressing their feedback.…
When using MySQL Group Replication, it’s possible that some members are lagging behind the group. Due to load, hardware limitation, etc… This lag can become problematic to keep good certification behavior regarding performance and keep the possible certification failure as low as possible. Bigger is the applying queue bigger is the risk to have conflicts with those not yet applied transactions (this is problematic on Multi-Primary Groups).
Galera users are already familiar with such concept. MySQL Group Replication’s implementation is different 2 main aspects:
- the Group is never totally stalled
- the node having issues doesn’t send flow control messages to the rest of the group asking for slowing down
In fact, every member of the Group send some statistics about its queues (applier queue and certification queue) to the other members. Then every node decide to slow down or not if they …
[Read more]In this blog, we’ll look at different MySQL high availability options.
The dynamic MySQL ecosystem is rapidly evolving many technologies built around MySQL. This is especially true for the technologies involved with the high availability (HA) aspects of MySQL. When I joined Percona back in 2009, some of these HA technologies were very popular – but have since been almost forgotten. During the same interval, new technologies have emerged. In order to give some perspective to the reader, and hopefully help to make better choices, I’ll review the MySQL HA landscape as it is in 2017. This review will be in three parts. The first part (this post) will cover the technologies that have been around for a long time: the elders. The second part will focus on the technologies that are very popular today: the adults. Finally, the last part will try to extrapolate which technologies could become popular in the upcoming years: the …
[Read more]Join Percona’s MySQL Practice Manager Kenny Gryp and QA Engineer, Ramesh Sivaraman as they present a high availability webinar around Percona XtraDB Cluster, Galera Cluster, MySQL Group Replication on Wednesday, June 21, 2017 at 10:00 am PDT / 1:00 pm EDT (UTC-7).
What are the implementation differences between Percona XtraDB Cluster 5.7, Galera Cluster 5.7 and MySQL Group Replication?
- How do they work? …
MySQL InnoDB Cluster (or only Group Replication) becomes more and more popular. This solution doesn’t attract only experts anymore. On social medias, forums and other discussions, people are asking me what it the best way to migrate a running environment using traditional asynchronous replication [Master -> Slave(s)] to InnoDB Cluster.
The following procedure is what I’m actually recommending. These steps have for objective to reduce the downtime to the minimum for the database service.
We can divide the procedure in 9 steps:
- the current situation
- preparing the future cluster
- data transfert
- replication from current system
- creation of the cluster with a single instance
- adding instances to the cluster
- configure the router
- test phase
- pointing the application to the new solution
…
[Read more]Recently MySQL launched the General Availability of their Group Replication enhancements via the MySQL Shell and MySQL Router. Although these URLs just noted go to their respective documentation pages, these collectively are part of the InnoDB Cluster offering. The MySQL shell provides sophisticated provisioning, monitored insight and management of a Group Replication setup. When provisioned as such, you… Read More »
Today I presented MySQL InnoDB Cluster at the Helsinki MySQL User Group.
To demonstrate how easy it’s to deploy a cluster with MySQL Shell and used the prompt that will be part of a future release just because it’s beautiful.
If you also want to see how it looks like, just check the video below:
There were several MongoDB users in the audience and I got only very positive feedback, they were very surprised how easy it’s to deploy a MySQL InnoDB Cluster these days !
The slides and videos from the Percona Live Open Source Database Conference 2017 are available for viewing and download. The videos and slides cover the keynotes, breakout sessions and MySQL and MongoDB 101 sessions.
To view slides, go to the Percona Live agenda, and select the talk you want slides for from the schedule, and click through to the talk web page. The slides are available below the talk description. There is also a page with all the slides that is searchable by topic, talk title, speaker, company or keywords.
To view videos, go to the …
[Read more]InnoDB Cluster was released as GA a few weeks ago. I remember the initial announcement of the product at OOW 2016, promising a seamless solution for replication and high availability with great ease of use. I was a bit disappointed to see that, at GA release time, the InnoDB Cluster is a patchwork of three separate products (Group Replication, MySQL Router, MySQL Shell) which the users have to collect and install separately.
Given this situation, I was very pleased when Matthew Lord published Docker-InnoDB-Cluster, an image for Docker that contains everything you need to get the system up and running. The …
[Read more]Taking a logical backup of a member of a Group Replication Cluster is not something very easy.
Currently (5.7.17, 5.7.18 or 8.0.0) if you want to use mysqldump to take a logical backup of your dataset, you need to lock all the tables on the member you are taking the dump. Indeed, a single transaction can’t be used as savepoints are not compatible with Group Replication.
[root@mysql3 ~]# mysqldump -p --single-transaction --all-databases --triggers \ --routines --events >dump.sql Enter password: mysqldump: Couldn't execute 'SAVEPOINT sp': The MySQL server is running with the --transaction-write-set-extraction!=OFF option so it cannot execute this statement (1290)
So we need to use:
[root@mysql3 ~]# mysqldump -p --lock-all-tables --all-databases --triggers \ --routines --events >dump.sql Enter password:
This can have a negative effect on the full Group’s …
[Read more]