Tagged articles

InnoDB

928 articles · Page 2 of 10
DeWu Technology
DeWu Technology
Sep 15, 2025 · Databases

Why MySQL Single-Table Data Should Stay Under 20 Million Rows

This article explains how InnoDB stores data in 16 KB pages, how B+Tree indexes work, derives the formula for the maximum number of rows a single MySQL table can hold, and why the practical limit of about twenty million rows exists, along with performance implications and optimization tips.

B+ TreeDatabase IndexingInnoDB
0 likes · 20 min read
Why MySQL Single-Table Data Should Stay Under 20 Million Rows
dbaplus Community
dbaplus Community
Sep 14, 2025 · Databases

Why MySQL Updates Sometimes Disappear: InnoDB Read View Explained

A nighttime incident revealed that a MySQL transaction updated a row but subsequent reads returned the old value, prompting a deep investigation that uncovered InnoDB’s repeatable‑read snapshot behavior, concurrent updates, and how MySQL may skip updates when data appears unchanged, along with reproducible steps and mitigation advice.

InnoDBMySQLRead View
0 likes · 16 min read
Why MySQL Updates Sometimes Disappear: InnoDB Read View Explained
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 10, 2025 · Databases

Why SELECT … FOR UPDATE Still Reads the Primary Key: MySQL Index Scan Deep Dive

This article examines why a SELECT … FOR UPDATE query that appears to use a covering index in MySQL actually performs a table‑row lookup, detailing indirect evidence from performance_schema locks and direct proof through InnoDB source code, and explains the necessity of accessing the primary key for transaction isolation.

Database InternalsIndex ScanInnoDB
0 likes · 9 min read
Why SELECT … FOR UPDATE Still Reads the Primary Key: MySQL Index Scan Deep Dive
Raymond Ops
Raymond Ops
Sep 7, 2025 · Databases

Understanding MySQL 8 Directory Structure and Table Storage

This article explains the main directory layout of MySQL 8, the locations of data files, configuration files, system databases, and how InnoDB and MyISAM storage engines represent tables and indexes on the file system, including the use of system and file‑per‑table tablespaces.

ConfigurationDatabase DirectoryInnoDB
0 likes · 13 min read
Understanding MySQL 8 Directory Structure and Table Storage
Zhuanzhuan Tech
Zhuanzhuan Tech
Aug 29, 2025 · Databases

Why MySQL Returns Old Values After Update: Inside InnoDB Snapshot Reads

This article investigates a puzzling MySQL behavior where a row updated within a transaction sometimes returns its previous value, explains the role of InnoDB's snapshot reads and ReadView, reproduces the issue, and offers practical ways to prevent the “update disappearance” scenario.

InnoDBMySQLUpdate Anomaly
0 likes · 18 min read
Why MySQL Returns Old Values After Update: Inside InnoDB Snapshot Reads
Sanyou's Java Diary
Sanyou's Java Diary
Aug 25, 2025 · Databases

Understanding MySQL Next-Key Locks: Preventing Phantom Reads and Deadlocks

This article explains MySQL InnoDB's Next-Key Lock mechanism, how it combines row and gap locks to prevent phantom reads under the REPEATABLE READ isolation level, illustrates lock ranges with examples, discusses when it degrades to row or gap locks, and highlights its advantages and potential deadlock risks.

InnoDBMySQLNext-Key Lock
0 likes · 8 min read
Understanding MySQL Next-Key Locks: Preventing Phantom Reads and Deadlocks
Raymond Ops
Raymond Ops
Aug 20, 2025 · Databases

Master MySQL Storage Engines: InnoDB vs MyISAM and Transaction Essentials

This comprehensive guide explains MySQL storage engine concepts, compares built‑in engines like InnoDB and MyISAM, details how to view and configure engines, and covers transaction fundamentals, isolation levels, locking mechanisms, and practical migration case studies for reliable database operations.

ACIDInnoDBTransactions
0 likes · 17 min read
Master MySQL Storage Engines: InnoDB vs MyISAM and Transaction Essentials
Sanyou's Java Diary
Sanyou's Java Diary
Aug 14, 2025 · Databases

Deep Dive into MySQL InnoDB Tablespaces, Undo Logs, and Doublewrite Buffer

This article explores MySQL InnoDB's memory and on‑disk architecture, detailing tablespace types, table and row formats, primary key strategies, index structures, the doublewrite buffer, redo log, undo log, and temporary tablespaces, complete with diagrams and code examples for practical understanding.

Doublewrite BufferInnoDBMySQL
0 likes · 25 min read
Deep Dive into MySQL InnoDB Tablespaces, Undo Logs, and Doublewrite Buffer
Lobster Programming
Lobster Programming
Aug 6, 2025 · Databases

Understanding MySQL Row Overflow and InnoDB Row Formats

This article explains why MySQL row overflow occurs, compares the four InnoDB row formats, shows how overflow data is stored, discusses performance and space impacts, and offers practical tips to prevent overflow by optimizing schema and page size settings.

InnoDBMySQLRow Overflow
0 likes · 4 min read
Understanding MySQL Row Overflow and InnoDB Row Formats
ITPUB
ITPUB
Aug 5, 2025 · Databases

Recovering Accidentally Deleted MySQL Metadata on CDH Without Downtime

This guide details how to restore a CDH cluster after MySQL metadata loss caused by an accidental deletion of the MySQL data directory, covering database locking, locating deleted file handles, reconstructing shared and independent tablespaces, and verifying consistency to bring the platform back online quickly.

CDHInnoDBLinux
0 likes · 6 min read
Recovering Accidentally Deleted MySQL Metadata on CDH Without Downtime
Lobster Programming
Lobster Programming
Jul 28, 2025 · Databases

How MySQL’s Double Write Buffer Prevents Partial Write Failures

This article explains why MySQL data pages can suffer partial write failures during crashes, how the mismatch between InnoDB and OS page sizes contributes to the problem, and how the Double Write Buffer mechanism safeguards data integrity by providing a recoverable copy of each page.

Double Write BufferInnoDBMySQL
0 likes · 7 min read
How MySQL’s Double Write Buffer Prevents Partial Write Failures
dbaplus Community
dbaplus Community
Jul 23, 2025 · Databases

What’s New in MySQL 9.4.0? Key Features, Fixes, and Improvements

MySQL 9.4.0 introduces extensive updates including charset handling fixes, macOS compilation options, component behavior changes, new system variables, deprecations, InnoDB memory and indexing enhancements, revised installation procedures, JavaScript stored‑procedure improvements, performance‑mode tweaks, vector function fixes, numerous new features, and a long list of resolved bugs across the server, client, and replication subsystems.

InnoDBMySQLbug fixes
0 likes · 26 min read
What’s New in MySQL 9.4.0? Key Features, Fixes, and Improvements
dbaplus Community
dbaplus Community
Jul 20, 2025 · Databases

Recovering Deleted MySQL Data Files in CDH: A Step‑by‑Step Guide

This guide walks through diagnosing a MySQL metadata loss in a CDH cluster, locking the database, locating deleted file handles, restoring shared and independent tablespace files, fixing table structures, verifying consistency, and explains the underlying Linux and MySQL mechanisms.

CDHInnoDBMySQL
0 likes · 6 min read
Recovering Deleted MySQL Data Files in CDH: A Step‑by‑Step Guide
MaGe Linux Operations
MaGe Linux Operations
Jul 19, 2025 · Databases

Master MySQL 8.0 Performance: 20+ Proven Optimization Tips

This guide presents more than twenty practical MySQL 8.0 optimization recommendations—including hardware tuning, InnoDB configuration, index design, query rewriting, security hardening, monitoring, backup strategies, and benchmarking—to help engineers dramatically improve database throughput, latency, and stability.

InnoDBMySQLSQL
0 likes · 15 min read
Master MySQL 8.0 Performance: 20+ Proven Optimization Tips
Liangxu Linux
Liangxu Linux
Jul 15, 2025 · Databases

InnoDB vs MyISAM vs Memory: Which MySQL Storage Engine Fits Your Needs?

This article compares MySQL's three common storage engines—InnoDB, MyISAM, and Memory—by examining their core features, locking mechanisms, transaction support, durability, foreign‑key capabilities, typical use cases, and provides concrete CREATE TABLE examples and a side‑by‑side feature matrix to help developers choose the right engine.

InnoDBMemoryMyISAM
0 likes · 7 min read
InnoDB vs MyISAM vs Memory: Which MySQL Storage Engine Fits Your Needs?
dbaplus Community
dbaplus Community
Jul 14, 2025 · Databases

Why Full Table Scans Won’t Exhaust MySQL Server Memory

Even when scanning a 200 GB InnoDB table on a server with only 100 GB of RAM, MySQL does not consume all memory because it streams results using a limited net_buffer, employs socket send buffers, and InnoDB’s optimized LRU algorithm manages the buffer pool to prevent memory blow‑up.

Buffer PoolInnoDBLRU
0 likes · 12 min read
Why Full Table Scans Won’t Exhaust MySQL Server Memory
macrozheng
macrozheng
Jul 4, 2025 · Databases

How Many Rows Can a MySQL Table Really Hold? A Deep Dive into B+ Tree Limits

This article consolidates theory and practical calculations to reveal how MySQL's B+‑tree storage, page structure, and row size determine the realistic maximum number of records a single table can store, ranging from millions to billions depending on schema choices.

B+ TreeDatabase LimitsIndex Calculation
0 likes · 11 min read
How Many Rows Can a MySQL Table Really Hold? A Deep Dive into B+ Tree Limits
Architect's Must-Have
Architect's Must-Have
Jul 2, 2025 · Databases

Why MySQL Indexes Matter: From Basics to B+Tree Mastery

This article explains what MySQL indexes are, how they work, their advantages and drawbacks, the different index types, the inner workings of B+Tree structures, and the differences between clustered and non‑clustered indexes, providing practical insights for database optimization.

B+ TreeInnoDBMySQL
0 likes · 10 min read
Why MySQL Indexes Matter: From Basics to B+Tree Mastery
Sohu Tech Products
Sohu Tech Products
Jun 11, 2025 · Databases

Unlocking MySQL InnoDB: Deep Dive into Tablespaces, Undo Logs, and Indexes

This article explains MySQL InnoDB's dual memory and on‑disk architecture, detailing the various tablespace types (system, file‑per‑table, general, undo, temporary), their internal structures (segments, extents, pages), configuration tips, and how tables, row formats, primary keys, auto‑increment lock modes, and B+Tree indexes are organized and managed.

InnoDBMySQLTablespaces
0 likes · 18 min read
Unlocking MySQL InnoDB: Deep Dive into Tablespaces, Undo Logs, and Indexes
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 11, 2025 · Databases

Understanding MySQL Transaction Isolation Levels with Real‑World Examples

This article explains MySQL's four transaction isolation levels—READ UNCOMMITTED, READ COMMITTED, REPEATABLE READ, and SERIALIZABLE—through step‑by‑step examples, demonstrating their effects on dirty reads, non‑repeatable reads, phantom reads, and performance considerations, helping developers choose the appropriate level.

Database ConcurrencyInnoDBMySQL
0 likes · 10 min read
Understanding MySQL Transaction Isolation Levels with Real‑World Examples
Cognitive Technology Team
Cognitive Technology Team
Jun 7, 2025 · Databases

Mastering MySQL Locks: Types, Mechanisms, and Best Practices

This article explains MySQL’s locking mechanisms, categorizing locks by performance, operation type, data granularity, and finer‑grained levels such as gap and next‑key locks, and offers guidance on selecting the appropriate lock strategy for reliable concurrent database operations.

Database LocksInnoDBMySQL
0 likes · 9 min read
Mastering MySQL Locks: Types, Mechanisms, and Best Practices
Programmer Xu Shu
Programmer Xu Shu
Jun 3, 2025 · Databases

Unlock MySQL InnoDB Secrets: How Row Formats Store Your Data

This article explains how MySQL InnoDB transforms a simple INSERT statement into a complex on‑disk record by detailing the COMPACT row format, record header, variable‑length field list, NULL bitmap, and overflow handling, helping developers optimize storage and performance.

Database StorageInnoDBMySQL
0 likes · 10 min read
Unlock MySQL InnoDB Secrets: How Row Formats Store Your Data
Sohu Tech Products
Sohu Tech Products
May 21, 2025 · Databases

How to Quickly Diagnose MySQL InnoDB Deadlocks in 3 Simple Steps

This guide walks you through locating MySQL deadlock logs, analyzing their contents to pinpoint transaction timing, order, and lock details, and identifying the root cause of the deadlock, including special locking scenarios that can trigger deadlocks.

Database TroubleshootingInnoDBMySQL
0 likes · 16 min read
How to Quickly Diagnose MySQL InnoDB Deadlocks in 3 Simple Steps
Sohu Tech Products
Sohu Tech Products
May 14, 2025 · Databases

How to Quickly Diagnose MySQL InnoDB Deadlocks in 3 Simple Steps

This guide walks you through locating the deadlock log, analyzing its contents to determine the time, order, and involved SQL statements, and pinpointing the root cause of MySQL InnoDB deadlocks, including special locking scenarios and how to interpret lock structures.

Database TroubleshootingInnoDBLock Analysis
0 likes · 16 min read
How to Quickly Diagnose MySQL InnoDB Deadlocks in 3 Simple Steps
Zhuanzhuan Tech
Zhuanzhuan Tech
Apr 23, 2025 · Databases

Quick 3‑Step Guide to Locate and Analyze MySQL InnoDB Deadlocks

This article explains how to find the MySQL deadlock log, parse its contents to determine the time, order, and affected rows, identify the lock types and root cause, and provides extended examples of special locking scenarios, all illustrated with real‑world SQL and code snippets.

InnoDBMySQLTroubleshooting
0 likes · 15 min read
Quick 3‑Step Guide to Locate and Analyze MySQL InnoDB Deadlocks
Aikesheng Open Source Community
Aikesheng Open Source Community
Apr 16, 2025 · Databases

Troubleshooting MySQL Transaction Lock Waits: Diagnosis and Resolution

This article explains how to reproduce a MySQL InnoDB lock‑wait scenario, use system tables such as information_schema.processlist, innodb_trx, sys.innodb_lock_waits and performance_schema to locate the blocking transaction, and finally resolve the issue by killing the offending session, while also providing quick‑check queries and parameter tuning advice.

Database TroubleshootingInnoDBLock Wait
0 likes · 9 min read
Troubleshooting MySQL Transaction Lock Waits: Diagnosis and Resolution
macrozheng
macrozheng
Apr 11, 2025 · Databases

Why MySQL count() Slows Down on Large Tables and How to Speed It Up

This article explains how MySQL's count() works across storage engines, why InnoDB scans rows and can time out on massive tables, and presents practical alternatives such as using EXPLAIN rows, a dedicated count table, batch processing, or binlog‑to‑Hive for efficient row‑count estimation.

COUNTInnoDBMyISAM
0 likes · 14 min read
Why MySQL count() Slows Down on Large Tables and How to Speed It Up
Architect's Must-Have
Architect's Must-Have
Mar 18, 2025 · Databases

Master MySQL Indexes: From Basics to B+Tree Optimization

This article explains what MySQL indexes are, how they work, their advantages and drawbacks, the different index types—including primary, ordinary, composite, full‑text, clustered and non‑clustered—and compares B‑Tree with B+Tree structures to help you design faster, more efficient queries.

B+TreeInnoDBMySQL
0 likes · 12 min read
Master MySQL Indexes: From Basics to B+Tree Optimization
MaGe Linux Operations
MaGe Linux Operations
Feb 23, 2025 · Databases

Understanding MySQL 8 Directory Structure and Table Storage

This guide explains MySQL 8's main directory layout, the locations of command binaries and configuration files, how databases and system schemas are represented on the file system, and the differences between InnoDB and MyISAM storage engines, including tablespace and file naming conventions.

Database FilesInnoDBMyISAM
0 likes · 13 min read
Understanding MySQL 8 Directory Structure and Table Storage
Aikesheng Open Source Community
Aikesheng Open Source Community
Feb 18, 2025 · Databases

Parsing Delete Undo Log in MySQL 8.0.32 InnoDB

This article explains how to read and parse the Undo log generated by a DELETE operation in MySQL 8.0.32 InnoDB, covering preparation, log extraction, detailed field parsing, locating the primary index record, and the step‑by‑step rollback of secondary and primary index records.

Database InternalsInnoDBMySQL
0 likes · 10 min read
Parsing Delete Undo Log in MySQL 8.0.32 InnoDB
Aikesheng Open Source Community
Aikesheng Open Source Community
Feb 12, 2025 · Databases

Understanding the Delete Undo Log Format in MySQL 8.0 InnoDB

This article explains how MySQL 8.0 InnoDB generates and stores Delete Undo logs, detailing the log structure, field meanings, type_flag and info_bits decoding, address composition via DB_ROLL_PTR, and provides concrete SQL examples and shell calculations to illustrate the process.

Database InternalsDelete OperationInnoDB
0 likes · 11 min read
Understanding the Delete Undo Log Format in MySQL 8.0 InnoDB
MaGe Linux Operations
MaGe Linux Operations
Feb 2, 2025 · Fundamentals

Unlock MySQL Storage Engines: InnoDB vs MyISAM and Transaction Essentials

This article explains MySQL's storage engine architecture, compares built‑in engines such as InnoDB and MyISAM, details their file system interactions, table‑space types, and transaction features—including ACID properties, isolation levels, locking mechanisms, and practical migration steps for production environments.

Database fundamentalsInnoDBMySQL
0 likes · 16 min read
Unlock MySQL Storage Engines: InnoDB vs MyISAM and Transaction Essentials
IT Services Circle
IT Services Circle
Feb 2, 2025 · Databases

Performance Comparison of MySQL COUNT Queries on InnoDB and MyISAM

This article experimentally compares the performance of various MySQL COUNT queries on an InnoDB table with one million rows, explains the underlying execution plans using EXPLAIN, analyzes primary‑key versus secondary‑index behavior, and contrasts InnoDB’s fast count implementation.

COUNTEXPLAINInnoDB
0 likes · 9 min read
Performance Comparison of MySQL COUNT Queries on InnoDB and MyISAM
Aikesheng Open Source Community
Aikesheng Open Source Community
Jan 20, 2025 · Databases

Understanding MySQL 8.0.13 sql_require_primary_key and Resolving Inconsistent Data After Adding Auto‑Increment Primary Keys

This article analyzes why MySQL 8.0.13 introduced the sql_require_primary_key parameter, demonstrates how adding auto‑increment primary keys can cause master‑slave data inconsistencies, explains the underlying InnoDB row‑id behavior, and provides a step‑by‑step solution to synchronize tables.

InnoDBMySQLauto-increment
0 likes · 7 min read
Understanding MySQL 8.0.13 sql_require_primary_key and Resolving Inconsistent Data After Adding Auto‑Increment Primary Keys
Liangxu Linux
Liangxu Linux
Jan 16, 2025 · Databases

Inside MySQL: How Buffer Pools, Indexes, and Logs Power Modern Databases

This article explains MySQL’s internal architecture, covering how data pages, B+‑tree and hash indexes, the Buffer Pool, Adaptive Hash Index, Change Buffer, Undo/Redo logs, the InnoDB storage engine, and the server layer work together to provide fast, reliable CRUD operations and support replication.

Buffer PoolInnoDBLogs
0 likes · 14 min read
Inside MySQL: How Buffer Pools, Indexes, and Logs Power Modern Databases
Aikesheng Open Source Community
Aikesheng Open Source Community
Jan 8, 2025 · Databases

How InnoDB Performs Undo Log Rollback and Record Deletion

This article explains the complete InnoDB undo‑log rollback process on MySQL 8.0, covering preparation, reading and parsing undo logs, constructing primary‑key index records, and the detailed steps for deleting secondary and primary index entries during a transaction rollback.

Database InternalsInnoDBMySQL
0 likes · 12 min read
How InnoDB Performs Undo Log Rollback and Record Deletion
Senior Tony
Senior Tony
Dec 30, 2024 · Databases

Unlocking MySQL InnoDB: Deep Dive into ACID, Redo/Undo Logs, and Double Write

This article explains MySQL InnoDB's ACID properties in depth, detailing how atomicity relies on Redo and Undo logs, how consistency ensures business logic integrity, how isolation uses locks and MVCC with snapshot and current reads, and how durability is achieved through Redo logs, the innodb_flush_log_at_trx_commit setting, and the Double Write mechanism.

ACIDInnoDBMySQL
0 likes · 11 min read
Unlocking MySQL InnoDB: Deep Dive into ACID, Redo/Undo Logs, and Double Write
Aikesheng Open Source Community
Aikesheng Open Source Community
Dec 18, 2024 · Databases

How MySQL InnoDB Allocates Undo Segments

This article explains the internal process MySQL 8.0.32 InnoDB uses to allocate, create, and manage Undo segments—including cached segment retrieval, new segment creation, insertion into rollback segment lists, conflict avoidance through mutexes, and a concise step‑by‑step summary of the entire workflow.

InnoDBMySQLdatabase
0 likes · 9 min read
How MySQL InnoDB Allocates Undo Segments
Programmer1970
Programmer1970
Dec 11, 2024 · Databases

How MySQL 8’s Transactional Data Dictionary Transforms Metadata Management

The article explains why MySQL 8 replaces fragmented, non‑transactional metadata files with a unified, InnoDB‑backed transactional data dictionary, details the information_schema views that expose it, and enumerates the resulting benefits such as atomicity, consistency, crash recovery, performance gains, simplified administration, reduced lock contention, smoother upgrades, improved DDL handling, and enhanced security.

InnoDBMySQLTransactional Data Dictionary
0 likes · 13 min read
How MySQL 8’s Transactional Data Dictionary Transforms Metadata Management
Senior Tony
Senior Tony
Dec 6, 2024 · Databases

Why MySQL COUNT(*) Can Be Milliseconds Fast: Engine Tricks & Optimization Strategies

This article explains why COUNT(*) on a large InnoDB table can take seconds while MyISAM returns instantly, explores the underlying storage‑engine differences, and presents six practical techniques—including Redis counters, counting tables with transactions or triggers, parallel read threads, secondary indexes, and SHOW TABLE STATUS—to dramatically speed up row counting in MySQL.

COUNTInnoDBMySQL
0 likes · 9 min read
Why MySQL COUNT(*) Can Be Milliseconds Fast: Engine Tricks & Optimization Strategies
Aikesheng Open Source Community
Aikesheng Open Source Community
Nov 27, 2024 · Databases

Summary of InnoDB Lock Module Articles

This article provides a concise English recap of the 27 previously published InnoDB lock module articles, covering theoretical concepts such as table and row locks, lock waiting, deadlock handling, and practical scenarios like lock behavior during inserts and duplicate key operations.

Database InternalsInnoDBLocks
0 likes · 6 min read
Summary of InnoDB Lock Module Articles
Aikesheng Open Source Community
Aikesheng Open Source Community
Nov 13, 2024 · Databases

InnoDB Locking Analysis for INSERT … ON DUPLICATE KEY under REPEATABLE‑READ and READ‑COMMITTED

This article examines how InnoDB acquires row‑level locks during INSERT … ON DUPLICATE KEY operations under REPEATABLE‑READ and READ‑COMMITTED isolation levels, explains the lock types on primary and unique indexes, and shows the rollback and lock‑conversion process with concrete SQL examples.

Duplicate KeyInnoDBMySQL
0 likes · 11 min read
InnoDB Locking Analysis for INSERT … ON DUPLICATE KEY under REPEATABLE‑READ and READ‑COMMITTED
ITPUB
ITPUB
Nov 11, 2024 · Databases

When Does MySQL Actually Update Index Blocks? A Deep Dive into InnoDB Update Mechanics

This article examines how MySQL InnoDB decides whether to modify index blocks during UPDATE statements, walks through the internal mysql_update workflow, shows debugging with GDB, explains three test scenarios, and validates the behavior by inspecting block LSNs with the innblock tool.

Database InternalsIndex UpdateInnoDB
0 likes · 18 min read
When Does MySQL Actually Update Index Blocks? A Deep Dive into InnoDB Update Mechanics
ITPUB
ITPUB
Nov 9, 2024 · Databases

Why MySQL Unique Indexes Still Allow Duplicates and How to Fix Them

This article explains why a MySQL 8 InnoDB table with a unique index can still store duplicate rows—especially when indexed columns contain NULL or when logical deletion is used—and presents several practical strategies, including status counters, timestamps, extra IDs, hash fields, and batch‑insert techniques, to enforce true uniqueness.

Batch InsertHash FieldInnoDB
0 likes · 14 min read
Why MySQL Unique Indexes Still Allow Duplicates and How to Fix Them
JavaEdge
JavaEdge
Oct 28, 2024 · Databases

Why Do MySQL Transactions Deadlock? Reproduce and Prevent InnoDB Deadlocks

This article explains how MySQL InnoDB deadlocks occur during order‑record idempotency checks, demonstrates step‑by‑step reproduction with SQL scripts, analyzes the lock types involved, and provides practical strategies to avoid and resolve such deadlocks in production systems.

InnoDBMySQLSQL
0 likes · 13 min read
Why Do MySQL Transactions Deadlock? Reproduce and Prevent InnoDB Deadlocks
Programmer1970
Programmer1970
Oct 24, 2024 · Databases

Demystifying MySQL InnoDB’s Thread Model: A Deep Dive

The article explains MySQL InnoDB’s multi‑thread architecture—including the Master, IO, Purge, and Page Cleaner threads—detailing each thread’s responsibilities, configurable parameters, and how they cooperate to achieve high‑performance, concurrent data reads and writes while maintaining consistency and crash recovery.

InnoDBMySQLconcurrency
0 likes · 11 min read
Demystifying MySQL InnoDB’s Thread Model: A Deep Dive
Architect's Guide
Architect's Guide
Oct 4, 2024 · Databases

Using MySQL Router 8.2 for Read/Write Splitting with InnoDB ReplicaSet

The article demonstrates how MySQL Router 8.2 enables transparent read/write splitting for an InnoDB ReplicaSet, showing the architecture, configuration steps, connection behavior, and the generated routing settings that improve database performance without modifying application code.

DatabasePerformanceInnoDBMySQL
0 likes · 4 min read
Using MySQL Router 8.2 for Read/Write Splitting with InnoDB ReplicaSet
Java Tech Enthusiast
Java Tech Enthusiast
Oct 3, 2024 · Databases

Understanding MySQL Architecture and SQL Execution Flow

The article outlines MySQL’s layered architecture—connector, parser, optimizer, executor, and binary log in the server layer and pluggable storage engines like InnoDB—then walks through the step‑by‑step processing of SELECT and UPDATE statements, highlighting permission checks, caching, plan selection, redo and binlog handling for crash‑safe durability.

InnoDBMySQLOptimization
0 likes · 11 min read
Understanding MySQL Architecture and SQL Execution Flow
Programmer1970
Programmer1970
Sep 26, 2024 · Databases

How MySQL’s Multi-Range Read (MRR) Turns Random I/O into Sequential I/O

The article explains MySQL’s Multi-Range Read (MRR) optimization, detailing how it scans secondary indexes, buffers and sorts primary keys, leverages disk pre‑read and cache locality to convert random I/O into sequential I/O, and shows configuration, monitoring methods, and a concrete orders‑table example.

InnoDBMRRMulti-Range Read
0 likes · 11 min read
How MySQL’s Multi-Range Read (MRR) Turns Random I/O into Sequential I/O
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 24, 2024 · Databases

Why Does a SELECT on performance_schema.data_locks Hang MySQL? Deep Dive & Fix

A batch INSERT triggers a massive lock record buildup, and a concurrent SELECT on performance_schema.data_locks causes a memory allocation error that leaves trx_sys‑mutex unreleased, leading to a full MySQL hang; the article reproduces the bug, analyses the stack, explains the root cause, and shows the official fix in MySQL 8.0.37.

Bug AnalysisInnoDBMySQL
0 likes · 9 min read
Why Does a SELECT on performance_schema.data_locks Hang MySQL? Deep Dive & Fix
Architect
Architect
Sep 19, 2024 · Databases

Phantom Read Verification and Analysis in InnoDB REPEATABLE‑READ Isolation

This article investigates whether the REPEATABLE‑READ isolation level in InnoDB fully prevents phantom reads by conducting a series of current‑read and snapshot‑read experiments, analyzing transaction behavior, MVCC mechanisms, and offering recommendations to avoid phantom anomalies.

InnoDBMVCCMySQL
0 likes · 19 min read
Phantom Read Verification and Analysis in InnoDB REPEATABLE‑READ Isolation