Over the past year, we have taken important steps to increase transparency and engagement across the MySQL ecosystem. Through public roadmap discussions, Early Access releases, publication of worklogs, bug transparency and backlog reduction, community public discussions, increased use of GitHub discussions, and contributor events, we have created more opportunities for the community to understand what […]
The latest from the MySQL community
Ideas, releases, practical guides, and perspectives from the people building with MySQL.
This article is also available in Chinese: 中文版. Browse all English articles.
Since MySQL 5.6, the MySQL replication team has been working to
reduce replication lag. The first step was schema-level parallel
application of the binlog, but schema-level parallelism only
helps when writes are spread across many databases; in the common
case, where most write traffic hits a single database, it
provides almost no parallelism. MySQL 5.7 then introduced the
Commit-Order parallel-replay strategy, which depends
on how many transactions run concurrently on the primary: the
replica can replay quickly only when the primary is highly
concurrent. When concurrency on the primary is low, the replica
still replays slowly and lag builds up. To fix that, MySQL 5.7
also …
This article provides MySQL Major Version Upgrade Checklist along with video, one may follow to ease the upgarde task.
The post MySQL Major Version Upgrade Checklist – how to first appeared on Change Is Inevitable.
The inaugural MySQL Contributor Summit, held in May 2026, brought together Oracle engineers, customers, partners, and members of the open source community for a full day of technical collaboration focused on the future of MySQL. The Summit featured more than 20 sessions covering topics including AI integration, performance, observability, replication, developer experience, extensibility, and community […]
This article is also available in Chinese: 中文版. Browse all English articles.
Large transactions are a notorious problem in MySQL: they cause not only replication lag but also stability problems. A previous article, MySQL Large Transaction Commit Optimization, covered the problems a large transaction causes at commit time and the optimizations we made in AliSQL. This article looks at the problems a large transaction causes during semi-synchronous replication, and how AliSQL solves them.
In MySQL Large Transaction Commit …
[Read more]MySQL 9.7, a Long-Term Support (LTS) release, incorporates a variety of potential features spanning across multiple technical domains. This article covers some of the primary features introduced and evaluates their practical utility within the MySQL database environment.
Following the End-of-Life (EOL) status of MySQL 8.0, this subsequent LTS release is designed to provide enhanced stability alongside significant architectural innovations.
Let’s discuss each of these features below with some examples and usage.
Flow-control monitoring in Group Replication
Flow control monitoring has been improved and provides more granularity by introducing the additional status variables listed below.
- Gr_flow_control_throttle_count : It denotes the number of transactions that have been throttled.
- Gr_flow_control_throttle_time_sum :It denotes the time in microseconds that transactions have been …
This article is also available in Chinese: 中文版. Browse all English articles.
If you use and operate MySQL, you’ve surely run into a strange slow query like this:
- An
INSERTthat’s normally instant took1.3s, and the slow-query log shows no long lock wait. - Every statement in a multi-statement transaction had already
finished, yet the
COMMITalone took1.3s.
When this happens, the most likely cause is a large transaction committing. Below is a simulated test: we used sysbench to simulate a normal workload, then ran a large UPDATE in the background every 5 seconds. You can see the large UPDATE severely hurts performance.
Root Cause
The …
[Read more]About a year ago, we discussed how MyDumper refactored its locking mechanisms to move away from old, rigid flags and transitioned towards more flexible, streamlined execution. Since then, the MyDumper community hasn’t stood still.
In recent releases, the locking architecture was further
standardized under a single overarching option:
--sync-thread-lock-mode. Along with this
modernization came a powerful new safety feature designed to give
you lock-free thread synchronization without risking silent
inconsistency: SAFE_NO_LOCK (merged in PR #2031).
Let’s explore the new thread-synchronization landscape and break down when you should use each mode.
What is --sync-thread-lock-mode?
Previously, flags like …
[Read more]With the new LTS (Long Term Support) release of MySQL 9.7.0 https://dev.mysql.com/doc/relnotes/mysql/9.7/en/ , Dynamic Data Masking (DDM) is one of the new features introduced as part of Enterprise Edition. The recent blog by Mike Frank, MySQL Product Management Director, details why DDM is important in every industry where PII (Personal Identifiable Information) data is stored […]
As a junior once I asked a seasoned MySQL DBA (Abuelo) “How do you stay so calm in critical situations?”Abuelo DBA then uttered golden words: “Son, I keep my dirty…
The post InnoDB Flushing is simple – explained first appeared on Change Is Inevitable.