The other day, I was discussing high availability (HA)
with other people. The discussion was going in the
direction of, as the application was only using INSERT ... ON DUPLICATE KEY
UPDATE (ODKU) and traffic could be replayed,
promoting a slave in case of the failure of the master was easy:
replaying traffic would make all the slaves converge
back to a common state. It looks as this could work but it
might not be as simple. Before going into the details,
let's take a step back and look into HA in general.
tl;dr: be careful when using row-based replication when
replicating ODKU as slaves will stop replicating if a row is
present on the master and missing on slave (or vice-versa).
High Availability by Promoting a Slave as the new Master
Let's suppose we are working …
August 13, 2014 By Severalnines
New Webinar: Performance Tuning of HAProxy for Database Load Balancing
As a follow-up to our previous webinar on MySQL Load Balancing and HAProxy, we are glad to organize a new webinar on Performance Tuning of HAProxy. Tuning your HAProxy instances can significantly increase the performance of your application and decrease response times. Joint us for this special session to find out more! |
|
Date, Time & Registration:
Tuesday, September 9th @10am CEST (Europe & MEA / Asia Pacific)
Tuesday, September 9th …
[Read more]As businesses head into the cloud, it is tempting to reach for the first product that offers to make database operation as simple as punching a few buttons on a menu. However, there’s a big difference between firing up cloud database services such as Amazon RDS for testing or development and finding a solution that can handle hundreds of millions of transactions daily. This webinar-on-demand
August 6, 2014 By Severalnines
Well over a thousand sessions have been submitted for the OpenStack Summit and two of them includes our good selves! We’ve submitted two talks with partners of ours:
- ClusterControl: Efficient and reliable MySQL Management, Monitoring, and Troubleshooting for OpenStack HA)
- Deploying Databases for OpenStack
… and would love it if the talks were included in the final agenda. For that to happen, we need a few more of your votes today!
The OpenStack Summit is a five-day conference for developers, users, and …
[Read more]We are pleased to inform you that the new Continuent Tungsten 2.0.3 is now available. This is a recommended release for all Continuent Tungsten clustering customers as it contains important updates and improvements to the stability of the manager component, specifically with respect to possible stalls and memory usage that would cause manager failures:
A number of fixes to the Manager
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 …
Martin and I have recently been blogging together about MySQL Fabric (in case you’ve missed this, you can find the first post of the series here), and on July 30th, we’re going to be presenting a webinar on this topic titled “Putting MySQL Fabric to Use.”
The focus of the webinar is to help you get started quickly on this technology, so we’ll include very few slides (mostly just a diagram or two) and then jump straight into shared screen mode, with lots of live console and …
[Read more]July 22, 2014 By Severalnines
We just wanted to make it official: Severalnines ClusterControl now supports MariaDB 10!
As most of you know will know by now, MariaDB 10 is the newest and most advanced version of the popular MariaDB relational database system. Whilst remaining application-compatible with the MySQL database, it adds many new capabilities to address the most challenging web and enterprise application use cases. Cluster deployments would be based on MariaDB Galera Cluster 10, which is a complete merge of MariaDB 10.0.12 and Galera Cluster.
ClusterControl for MariaDB Clusters
ClusterControl gives you the power to deploy, manage, monitor and scale entire MariaDB Galera clusters efficiently and …
[Read more]This is the second part of my series on High Availability with mysqlnd_ms. In my first post, “Simple MySQL Master HA with mysqlnd_ms,” I showed a simple HA solution using asynchronous MySQL replication. This time we will see how to leverage an all-primary cluster where you can write to all nodes. In this post I used Percona XtraDB Cluster, but you should also be able to do the same with MySQL NDB Cluster or Tungsten Replicator.
To start with, here is the mysqlnd_ms configuration I used:
mysqlnd_ms_mm.ini
. All of these files are available from my Github repository. Below, I have three Percona XtraDB Cluster nodes, …
[Read more]I had the pleasure of presenting to the PHP Users Group Philippines a few days ago about mysqlnd_ms. The mysqlnd plugin, MySQL Master Slave, is a transparent layer on top of mysqlnd extension. This allows you to do read-write splitting and slave reads load balancing without needing to change anything from your application. But do you know you can also achieve a form of high availability with this plugin? I shared 2 forms on my presentation, using async MySQL replication either in master-slave configuration or master-master configuration, while the second form is having an all primary cluster where you can write to all nodes.
This first part is to demonstrate how you can achieve a simple HA solution using the first form. First, all the sample code here can be found on my GitHub repository. So, to use the mysqlnd_ms plugin, it uses …
[Read more]