Jan
27
2026
--

Automatic “Multi-Source” Async Replication Failover Using PXC Replication Manager

Automatic "Multi-Source" Async Replication Failover Using PXC Replication ManagerThe replication  manager script can be particularly useful in complex PXC/Galera topologies that require Async/Multi-source replication. This will ease the auto source and replica failover to ensure all replication channels are healthy and in sync. If certain nodes shouldn’t  be part of a async/multi-source replication, we can disable the replication manager script there to tightly controlled the flow. Alternatively, node participation can be controlled by adjusting the weights in the percona.weight table, allowing replication behavior to be managed more precisely.

Dec
09
2025
--

How to Turn a MySQL Unique Key Into a Primary Key

A unique constraint specifies, one or more columns as unique it identifies. It is satisfied only when no two rows store the same non-null values at its core. A primary key constraint is a unique one that will say PRIMARY KEY in its defined way. It is satisfied only when rows unfold, and none may […]

Nov
14
2025
--

A Tale of Two Databases: No-Op Updates in PostgreSQL and MySQL

No-Op Updates in PostgreSQL and MySQLI’m lazy when I’m speakin’ I’m lazy when I walk I’m lazy when I’m dancin’ I’m lazy when I talk   X-Press 2 Feat. David Byrne – Lazy While preparing a blog post to compare how PostgreSQL and MySQL handle locks, as part of a series covering the different approaches to MVCC for these databases, […]

Nov
05
2025
--

Surprise with innodb_doublewrite_pages in MySQL 8.0.20+

innodb_doublewrite_pages in MySQL 8.0.20+In a recent post, The Quirks of Index Maintenance in Open Source Databases, I compared the IO load generated by open source databases while inserting rows in a table with many secondary indexes. Because of its change buffer, InnoDB was the most efficient solution. However, that’s not the end of the story. Evolution of the […]

Sep
17
2025
--

MySQL with Diagrams Part Three: The Life Story of the Writing Process

How MySQL writes workWhen you run a simple write, …it may look simple, but under the hood, MySQL’s InnoDB engine kicks off a pretty complex sequence to ensure your data stays safe, consistent, and crash-recoverable. In the top-left corner of the diagram, we see exactly where this begins — the moment the query is executed: [crayon-68cb7b0282a22221090106/] The log […]

May
29
2025
--

How to Safely Upgrade InnoDB Cluster From MySQL 8.0 to 8.4

Upgrade InnoDB ClusterIn this blog, we continue from where we left off in the previous post, InnoDB Cluster Setup: Building a 3-Node High Availability Architecture, where we demonstrated how to set up a MySQL InnoDB Cluster with three nodes to achieve high availability. Here, we walk through the step-by-step process of performing a rolling upgrade of that […]

May
20
2025
--

InnoDB Cluster: Set Up Router and Validate Failover

InnoDB Cluster: Set Up Router and Validate FailoverSetting up an InnoDB Cluster requires three key components: Group Replication, MySQL Shell, and MySQL Router. In the previous post, we covered the process of building a 3-node InnoDB Cluster. In this post, we shift our focus to configuring MySQL Router and validating failover functionality. Environment overview We are using three InnoDB Cluster nodes along […]

Mar
24
2025
--

Percona XtraBackup 8.4 Pro: Reduce Server Locking by up to 4300X

Percona XtraBackup 8.4 Pro lockingWhen performing backups, reducing the amount of time your server is locked can significantly improve performance and minimize disruptions. Percona XtraBackup 8.4 Pro introduces improvements in how DDL (Data Definition Language) locks (aka Backup Locks) are managed, allowing for reduced locking during backups. In this post, we’ll explore the impact of these enhancements. TL;DR (Summary) […]

Dec
03
2024
--

Who Ate My MySQL Table Rows?

ALTER TABLE and OPTIMIZE TABLE on an InnoDB tableTL;DR ALTER TABLE and OPTIMIZE TABLE on an InnoDB table, which rebuilds the table without blocking concurrent changes to it (i.e., executed using INPLACE algorithm) and concurrent DML or purge activity on the table can occasionally lead to two significant problems: ALTER/OPTIMIZE TABLE failing with an unnecessary duplicate key error (even though there are no […]

Sep
25
2024
--

How Network Splits/Partitions Impact Group Replication in MySQL

Network Splits/Partition on Group ReplicationIn this blog post, we will explore how network partitions impact group replication and the way it detects and responds to failures. In case you haven’t checked out my previous blog post about group replication recovery strategies, please have a look at them for some insight. Topology: [crayon-66f40f3f3cad1905113104/] Scenario 1: One of the GR nodes […]

Powered by WordPress | Theme: Aeros 2.0 by TheBuckmaker.com