Community journal

The latest from the MySQL community

Ideas, releases, practical guides, and perspectives from the people building with MySQL.

Follow the feed
Showing entries 1 to 10 of 45543 « Previous | Next »
Diagnosing MySQL at Scale (Part 2): Storage Subsystems, Buffer Pool Latches, and Memory Spills

In transactional database systems, the latency gap between memory access (tens to hundreds of nanoseconds) and persistent storage access (tens to hundreds of microseconds for local NVMe devices and milliseconds for remote cloud block storage such as Amazon EBS) spans multiple orders of magnitude. Once a workload exhausts available memory and begins interacting heavily with storage, query response times can deteriorate rapidly.

However, storage-related performance problems in MySQL are rarely solved by simply adding IOPS. In many production incidents, latency originates within the database engine itself:

  • Redo-log checkpoint advancement falling behind incoming write velocity, forcing foreground transactions to participate in synchronous flushing activity ("sync flush").
  • Doublewrite buffering increasing write amplification, contributing to storage-pressure events and …
[Read more]
Vector search in MySQL: from a plugin to the top of the Contributor Summit agenda

A plugin started the fire, the M-ecosystem picked it up, the hyperscalers went native, and now the benchmark wars have begun.

Not long ago, if you asked about vector search in MySQL, you got a polite smile and a link to pgvector. Even after MySQL 9 added a VECTOR column type, the obvious next questions had no answer. Where is the index? Where is the distance function? For a while the honest answer was “use something else.”

This week the MySQL Contributor Summit (Nov 4–5, online) opened its technical program with vector search. The first discussion block, AI & Cloud, had four vector and AI proposals back to back from Oracle, Google, Percona and Intel. It was the clearest sign yet of how far vector search in MySQL has come.

Looking back, vector …

[Read more]
MySQL Ecosystem Project Spotlight of the Week - ProxySQL

This week, we're highlighting ProxySQL. As applications grow, so do the demands on MySQL. ProxySQL helps developers and DBAs manage database traffic through connection pooling, query routing, and load balancing, providing greater control over how applications connect to MySQL.

Diagnosing MySQL at Scale (Part 1): Critical System Blocks, Metadata Locks, and Cluster Convoys

High-concurrency database workloads rarely fail because of simple CPU or disk capacity limits. Instead, performance collapses occur when transactions serialize on shared internal database resources: metadata locks, data dictionary latches, group communication certification queues, and network buffers.

When contention occurs, external monitoring dashboards often show deceptive metrics such as near-zero CPU and disk activity alongside a massive surge in active connections and application timeouts. MySQL exposes these internal contention points through Performance Schema wait events.

This article—the first in a four-part deep dive—covers the foundational mechanics of Performance Schema wait telemetry, the governance of instrumentation overhead in high-throughput environments, and the diagnosis of Critical System Blocks: Metadata Locks (MDL), Data Dictionary latch serialization, and Group Replication Flow-Control stalls.

…

[Read more]
WooCommerce Analytics with DuckDB

MySQL and DuckDB

Unlike row-oriented databases, which store data for a single record sequentially on disk, favoring single-row lookups, columnar databases store all the values from a column contiguously in storage, allowing only the selected column to be read from disk.

The default MySQL engine is InnoDB, which is ACID-compliant and great for OLTP (Online Transaction Processing) workloads. That said, OLAP (Online Analytical Processing) queries are built differently; they scan, group, and summarize millions or billions of rows to produce reports. In these cases, the InnoDB engine can be slow to process such queries. This has been a debt in MySQL over the years; it was common to setup ETL/CDC pipelines to export or stream the data to another engine, usually a columnar database system, to run reporting and BI queries on it.

DuckDB is a portable analytical database system, designed to be fast and reliable, similar to SQLite. …

[Read more]
Village News: MySQL News + Events (5 November 2026)

Welcome back to Village News, our curated roundup of MySQL and database news. This week, AWS contributed a fix for large-transaction binlog stalls to community MySQL, and MariaDB launched Enterprise Platform 2027.

If you want to get these updates, just subscribe to the blog.

Enjoy!

MySQL News

Note: Aggregated MySQL news can be found at Planet for MySQL Community and Planet MySQL (Oracle curated)

AWS contributes a large-transaction binary log optimization to MySQL
AWS Database Blog

TL;DR …

[Read more]
MySQL Community Spotlight - Jonathan Desrosiers

Jonathan shares how he discovered MySQL through building websites and WordPress, his experience at the EU Summit for the MySQL Community, and the challenges of balancing backwards compatibility with modern MySQL features.

MySQL Shorts - Episode 105 - MySQL Null-Safe Equality Operator for Accurate Filtering

MySQL's null-safe equality operator helps you write SQL queries that correctly match NULL values and retrieve records that ordinary equality comparisons miss. See how to filter assigned and unassigned support tickets using null-safe comparisons, and explore the operator's syntax and behavior in the MySQL Reference Manual: https://dev.mysql.com/doc/refman/9.7/...

Learn how the MySQL null-safe equality operator handles NULL values in SQL queries and helps retrieve records that standard equality comparisons can miss. This demo explains the difference between ordinary equality (=) and null-safe equality, showing how each operator evaluates NULL values and affects query results.

AWS contributes a large-transaction binary log optimization to MySQL

When MySQL commits a large transaction carrying gigabytes of changes, writing it to the binary log (binlog) can freeze every other commit on the server for minutes. This includes transactions that touch unrelated data. This bottleneck is detrimental to applications that depend on low commit latency. On October 29, 2026, AWS shipped an optimization into community MySQL that removes this bottleneck. We call it Binary Log Optimization for Large Transactions (BOLT). It has been available in Amazon Aurora MySQL since v1.22.0 and in all currently supported major versions (Aurora MySQL 2.x, 3.x, and 8.4.x), where it’s always on for every customer. BOLT is planned to be released as part of a future MySQL innovation release.

BOLT provides three benefits. It makes binlog commit latency for large transactions independent of transaction size, it speeds up binlog crash recovery, and it improves throughput for workloads that mix small and large …

[Read more]
MySQL Community Spotlight - Vinicius Grippa

Vinicius shares how he got started with MySQL, the community members who inspire him, and his enthusiasm for performance troubleshooting, community events, and AI.

« Previous | Next »