Buy Percona ServicesBuy Now!

The Multi-Source GTID Replication Maze

 | March 13, 2018 |  Posted In: GTID, Insight for DBAs, MySQL, Replication

Multi-Source GTID Replication

In this blog post, we’ll look at how to navigate some of the complexities of multi-source GTID replication. GTID replication is often a real challenge for DBAs, especially if this has to do with multi-source GTID replication. A while back, I came across a really interesting customer environment with shards where multi-master, multi-source, multi-threaded MySQL 5.6 […]

Read More

MySQL Point in Time Recovery the Right Way

 | October 23, 2017 |  Posted In: Backups, GTID, MySQL, Replication

MySQL Point In Time Recovery

In this blog, I’ll look at how to do MySQL point in time recovery (PITR) correctly. Sometimes we need to restore from a backup, and then replay the transactions that happened after the backup was taken. This is a common procedure in most disaster recovery plans, when for example you accidentally drop a table/database or run […]

Read More

Group Replication: The Sweet and the Sour

 | August 1, 2017 |  Posted In: GTID, High-availability, InnoDB, MySQL, Percona XtraDB Cluster, PMM

Group Replication

In this blog, we’ll look at group replication and how it deals with flow control (FC) and replication lag.  Overview In the last few months, we had two main actors in the MySQL ecosystem: ProxySQL and Group-Replication (with the evolution to InnoDB Cluster).  While I have extensively covered the first, my last serious work on […]

Read More

The MySQL High Availability Landscape in 2017 (The Elders)

 | June 20, 2017 |  Posted In: Group Replication, GTID, High-availability, MySQL, Percona XtraDB Cluster

High Availability

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 – […]

Read More

Managing Replication with Percona XtraDB Cluster

 | December 1, 2016 |  Posted In: GTID, High-availability, Percona XtraDB Cluster, Replication

MySQL high availability

This blog post discusses managing replication with Percona XtraDB Cluster. Recently a customer asked me to setup replication between two distinct Percona XtraDB Clusters located in geographically separate data centers. The customer goal was to use one of the clusters only in case of disaster recovery. They tried extending the cluster, but because of the […]

Read More

Database Daily Ops Series: GTID Replication and Binary Logs Purge

 | December 1, 2016 |  Posted In: GTID, MySQL, Percona Managed Services

GTID replication

This blog continues the ongoing series on daily operations and GTID replication. In this blog, I’m going to investigate why the error below has been appearing in a special environment I’ve been working with on the last few days:

The error provides the right message, and explains what is going on. But sometimes, it can be a […]

Read More

Database Daily Ops Series: GTID Replication

 | November 10, 2016 |  Posted In: GTID, MySQL, Percona Managed Services

GTID Replication

This post discusses ways of fixing broken GTID replication. This blog series is all about the daily stories we have in Managed Services, dealing with customers’ environments (mostly when we need to quickly restore a service level within the SLA time). One of the issues we encounter daily is replication using the GTID protocol. While there are […]

Read More

How We Made MySQL Great Again, or Upgrading MySQL with Orchestrator

and  | April 26, 2016 |  Posted In: GTID, High-availability, MySQL, Orchestrator, Percona Server for MySQL, Replication

Upgrading MySQL with Orchestrator

In this blog post, we’ll discuss upgrading MySQL with Orchestrator. I recently had a client, Life360, that wanted to upgrade from Percona Server 5.5 to Percona Server 5.6, and implement GTID in their high transaction environment. They had co-masters and multiple read slaves. Orchestrator made this job much easier for us. My colleague, Tibi, recently posted […]

Read More

High availability with asynchronous replication… and transparent R/W split

 | February 25, 2016 |  Posted In: GTID, High-availability, MariaDB, Maxscale, MySQL

High availability with asynchronous replication

In this post, the first one of a Maxscale series, I describe how to use MariaDB’s MaxScale and MySQL-utilities with MySQL Asynchronous replication. When we talk about high availability with asynchronous replication, we always think about MHA or PRM. But if we want to transparently use the slave(s) for READs, what can we use ? Description: […]

Read More

Fixing errant transactions with mysqlslavetrx prior to a GTID failover

 | December 2, 2015 |  Posted In: GTID, MySQL

GTID and errant transactions

Errant transactions are a major issue when using GTID replication. Although this isn’t something new, the drawbacks are more notorious with GTID than with regular replication. The situation where errant transaction bites you is a common DBA task: Failover. Now that tools like MHA have support for GTID replication (starting from 0.56 version), this protocol […]

Read More