Slave election is a popular HA architecture, first MySQL
MariaDB toolkit to manage switchover and failover in a correct
way was introduce by Yoshinori
Matsunobu into MHA.
Failover and switchover in asynchronous clusters require
caution:
- The CAP theorem need to be satisfy. Getting strong consistency,
require the slave election to reject transactions ending up in
the old master when electing the candidate master.
- Slave election need to take care that all events on the old
master are applied to the candidate master before switching
roles.
- Should be instrumented to found a good candidate master and
make sure it's setup to take the master role.
- Need topology detection, a master role can't be pre defined, as
the role …
The latest from the MySQL community
Ideas, releases, practical guides, and perspectives from the people building with MySQL.
MySQL India team is back with another MySQL user camp.
The day of the week, time and venue remains the same:
Date: Jun 26th, 2015
Day : Friday
Time: 3-5:30 pm
Place: OC001, Block1, B wing, Kalyani Magnum Infotech Park, J.P Nagar, 7th Phase Bangalore, India
During our previous meetings we were requested by our attendees that they would like to hear about implementation of GTID by the MySQL community. We have listened to you and requested a community member to talk about their experience with the implementation of GTID. Our first talk is :
- MySQL Tools Usage in Rakuten and Overview of Replication GTIDs
There is also a lot of interest in our new delivery vehicles for MySQL packages. Using the new YUM repos you can stay up to date with the latest MySQL releases. You need not wait for your distro to update MySQL in their release …
[Read more]
The link to the slides of my talks can be found at the end of
this post but first, let me share some thoughts about PLMCE.
Talking with people, I was surprised to be criticized of
presenting only the good sides of my solution without giving
credit to the good side of the alternative solutions. More
than surprised, I was also a little shocked as I want to be
perceived as objective as possible. Let me try to fix
that:
- I am not a GTID and log-slaves detractor, I am a simplicity lover.
- I actually like GTIDs and I have some use-cases for them; one of them is described in the MariaDB Knowledge Base (search for last_gtid in that page).
- But I think that using GTIDs in the slave protocol is complex and that a …
Dealing with the failure of a MySQL master is not simple. The most common solution is to promote a slave as the new master but in an environment where you have many slaves, the asynchronous implementation of replication gets in your way. The problem is that each slave might be in a different state:
some could be very close to the dead master, some could be missing the latest transactions, and
One year ago, I blogged about Evaluation and Online Migration of MySQL 5.6 GTIDs. At that time, we setup the following test environment where:
A is a production master with GTIDs disabled, D to Z are standard slaves with GTIDs disabled, B is an intermediate master running my recompiled version of MySQL implementing the ANONYMOUS_IN-GTID_OUT mode (see the details my previous post), C is a slave
This past week was marked by a series of personal findings related to the use of Global Transaction IDs (GTIDs) on Galera-based clusters such as Percona XtraDB Cluster (PXC). The main one being the fact that transactions touching MyISAM tables (and FLUSH PRIVILEGES!) issued on a giving node of the cluster are recorded on a GTID set bearing the node’s server_uuid as “source id” and added to the binary log (if the node has binlog enabled), thus being replicated to any async replicas connected to it. However, they won’t be replicated across the cluster (that is, all of this is by design, if wsrep_replicate_myisam is …
[Read more]Multi-threaded replication is a new feature introduced in MySQL 5.6 and MariaDB 10.0. In traditional single-threaded replication, the slaves have a disadvantage as they have to process in sequence what a master executed in parallel. This, plus the fact that slaves usually have a lot of read-only connections to deal with as well, can easily create performance problems. That is, a single-threaded slave needs to be set to allow fewer connections, otherwise there’s a higher risk of it not being able to keep up with the replication stream. There is no exact rule for this, as it relates to general I/O capacity and fsync latency, as well as general CPU and RAM considerations and query …
[Read more]Martin Arrieta and I gave an online presentation last week on “Putting MySQL Fabric To Use.” If you missed it, you can find a recording and the slides here, and the vagrant environment we used plus a transcript of the commands we ran here (be sure to check out the ‘sharding’ branch, as that’s what we used during the webinar).
Thank you all for attending and asking interesting questions. We were unable to answer all of them in the scheduled time, so here are our replies to all the questions.
What is GTID? And how does it relate to MySQL
Fabric?
GTID stands for Global …
Jean-François talks about binlog servers. Take a look here: http://blog.booking.com/mysql_slave_scaling_and_more.html
MariaDB 10.0.11 was recently released, and is available for download here:
https://downloads.mariadb.org/mariadb/10.0.11/
This is the second GA release of MariaDB 10.0, and 12th overall release of MariaDB 10.0.
This is primarily a bug-fix release.
Here are the main items of note:
- Updated TokuDB engine to version 7.1.6
- Updated Spider storage engine to version 3.2 (now Gamma)
- Updated XtraDB storage engine to version 5.6.17-65.0
- Updated InnoDB storage engine to version 5.6.17
- Updated …