A year ago, I blogged about An Unprivileged User can crash your MySQL Server. At the time, I explained how to protect yourself against this problem. A few weeks ago, I revisited this vulnerability in a follow-up post in which I explained the fix, claimed that the MySQL 5.7 default configuration for Group Replication is still problematic, and explained a tuning to avoid the vulnerability. In
10 Older Entries »
In April 2021, I wrote an article about Online DDL and Group Replication. At that time we were dealing with MySQL 8.0.23 and also opened a bug report which did not have the right answer to the case presented.
Anyhow, in that article I have shown how an online DDL was de facto locking the whole cluster for a very long time even when using the consistency level set to EVENTUAL.
This article is to give justice to the work done by the MySQL/Oracle engineers to correct that annoying inconvenience.
Before going ahead, let us remember how an Online DDL was propagated in a group replication cluster, and identify the differences with what happens now, all with the consistency level set to EVENTUAL ( …[Read more]
InnoDB Cluster has been around for what feels like a long time. It is the core platform for MySQL High Availability. InnoDB Cluster NOW extends that core feature into a platform that also enables DR support where multiple Disaster Recovery Regions are capable.
A year ago, I blogged about An Unprivileged User can Crash your MySQL Server. At the time, I presented how to protect yourself against this problem without explaining how to generate a crash. In this post, I am revisiting this vulnerability, not giving the exploit yet, but presenting the fix. Also, because the default configuration of Group Replication in 5.7 is still vulnerable (it is not in
MySQL InnoDB Cluster is the official High Availability solution for and from MySQL.
MySQL InnoDB Cluster is composed by MySQL Server, MySQL Group Replication, MySQL Router and MySQL Shell.
Before InnoDB Cluster there was no standard solution for MySQL Availability and many custom solutions were used (some better than the others). But there was a good solution using some similar principles of MySQL Group Replication: Galera.
Now that MySQL InnoDB Cluster is mature and easier to orchestrate than galera, I receive a lot of requests on how to migrate from Galera (or Percona XtraDB Cluster) to MySQL InnoDB Cluster.
I already wrote some time ago an article on this process: how to migrate from Galera to MySQL Group Replication.
In this article we will see how we can migrate from Percona XtraDB …[Read more]
MySQL Group Replication is a plugin that helps to implement highly available fault-tolerant replication topologies. In this blog, I am going to explain the complete steps involved in the below two topics.
- How to convert the group replication member to an asynchronous replica
- How to convert the asynchronous replica to a group replication member
Why Am I Converting From GR Back to Old Async?
Recently I had a requirement from one of our customers running 5 node GR clusters. Once a month they are doing the bulk read job for generating the business reports. When they are doing the job, it affects the overall cluster performance because of the flow control issues. The node which is executing the read job is overloaded and delays the certification and writes apply process. The read job queries can’t be split across the cluster. So, they don’t want that …[Read more]
MySQL InnoDB Cluster is the High Availability solution for MySQL.
It delivers automatic fail-over and guarantees zero data loss
RPO: Recovery Point Objective describes the interval of time that might pass during a disruption before the quantity of data lost during that period exceeds the Business Continuity Plan’s maximum allowable tolerance.
Example: our business architecture needs to have RPO=2 minutes. This means that in case of failure, 2 minutes of data can be lost.
However, and we saw this recently in Europe, an entire data center can “disappear” instantaneously… So it’s also important to have a Disaster Recovery plan.
One solution, is to have an InnoDB Cluster (Group Replication) that spans across multiple regions. However, this is often not feasible because of high latency across regions.
Another solution is InnoDB Cluster in one region with Asynchronous …[Read more]
In one of our previous articles - Setting up Replication with
various methods for MySQL 8 - we reviewed how to create a replica
with multiple tools.
Now, it is time to perform the same action but with MySQL Shell.
Since MySQL 8.0.22 there is a mechanism in asynchronous replication that makes the receiver automatically try to re-establish an asynchronous replication connection to another sender, in case the current connection gets interrupted due to the failure of the current sender.
The post Automatic connection failover for Asynchronous Replication first appeared on dasini.net - Diary of a MySQL experts.
I wanted to be brave and I installed MySQL Group Replication manually…. it was painful !
Then I realized that managing those servers and especially deal with MySQL Routers was even more painful !
What are my options now ? Is there a solution or do I need to restart from scratch ?
Asking the answer is already answering it… and once again MySQL Shell at the rescue.
MySQL Group Replication
I’ve configured everything manually. I also loaded group_replication and clone plugins and finally after having bootstrapped my Group here is what I have:
mysql> select member_host, member_port[Read more]
versionfrom performance_schema.replication_group_members; +-------------+------+--------+-----------+---------+ | member_host | port | state | role | version | …
10 Older Entries »