Tagged articles
5000 articles
Page 28 of 50
ITFLY8 Architecture Home
ITFLY8 Architecture Home
Sep 14, 2022 · Databases

Master MySQL: 3 Normal Forms, Engine Differences, Indexing, Transactions & More

This comprehensive guide covers MySQL fundamentals such as the three normal forms, differences between MyISAM and InnoDB, redo log versus binlog, when queries bypass indexes, join types, various index structures, covering indexes, back‑row lookups, transaction properties and isolation levels, common performance bottlenecks, replication mechanics, lag mitigation, storage behavior after deletes, VARCHAR limits, lock types, systematic SQL tuning steps, the purpose and trade‑offs of indexes, B+‑tree advantages, MVCC internals, and the Snowflake distributed ID algorithm.

MySQLTransactionsindexing
0 likes · 24 min read
Master MySQL: 3 Normal Forms, Engine Differences, Indexing, Transactions & More
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 14, 2022 · Databases

DTLE 4.22.07.2 Release Notes – New Features, Fixes and Resources

The DTLE 4.22.07.2 release introduces performance‑boosting pipeline enhancements for large transactions, continuous insert optimizations, data chunking for massive loads, a new DumpEntryLimit setting, and bug fixes, while providing repository links, documentation, and recommended articles for further exploration.

DTLEData TransferDatabases
0 likes · 4 min read
DTLE 4.22.07.2 Release Notes – New Features, Fixes and Resources
Liangxu Linux
Liangxu Linux
Sep 13, 2022 · Databases

How to Find and Remove Duplicate Rows in SQL

This guide explains how to identify duplicate rows in a MySQL table using GROUP BY and HAVING, how to delete the extra rows while keeping the earliest entry, and how to handle duplicate detection across multiple columns with correct query patterns and common pitfalls.

DeleteGROUP BYHAVING
0 likes · 11 min read
How to Find and Remove Duplicate Rows in SQL
Java Backend Technology
Java Backend Technology
Sep 13, 2022 · Databases

Master‑Slave MySQL Replication & Read‑Write Splitting with ShardingJDBC: A Step‑by‑Step Guide

This article explains why a single MySQL instance can become a bottleneck, introduces asynchronous master‑slave replication using binary logs, provides detailed configuration commands for both master and slave servers, and shows how to achieve read‑write splitting in Java projects with ShardingJDBC, including dependency setup, YAML configuration, and testing procedures.

DatabaseMySQLShardingJDBC
0 likes · 11 min read
Master‑Slave MySQL Replication & Read‑Write Splitting with ShardingJDBC: A Step‑by‑Step Guide
Su San Talks Tech
Su San Talks Tech
Sep 13, 2022 · Databases

Top 20 MySQL Query Optimization Tips to Boost Performance

This article presents a comprehensive list of MySQL optimization best practices, covering SELECT field selection, WHERE clause design, data type choices, index usage, join strategies, batch operations, UNION handling, and many other techniques to reduce resource consumption, improve query speed, and ensure efficient database management.

IndexesMySQLquery performance
0 likes · 17 min read
Top 20 MySQL Query Optimization Tips to Boost Performance
dbaplus Community
dbaplus Community
Sep 12, 2022 · Databases

How to Resolve Deep Pagination Performance Problems in MySQL

This article walks through a real‑world incident caused by MySQL deep pagination, explains how the slow queries and CPU spikes were diagnosed, and presents several concrete optimization techniques—including ID‑based queries, range scans, sub‑queries and cursor‑based pagination—culminating in a stable production fix.

DatabaseMySQLSQL optimization
0 likes · 10 min read
How to Resolve Deep Pagination Performance Problems in MySQL
MaGe Linux Operations
MaGe Linux Operations
Sep 12, 2022 · Databases

Master MySQL Monitoring with Built‑in SHOW Commands: A Complete Guide

This article explains how to collect comprehensive MySQL performance metrics using only native SHOW commands, covering connections, buffer pool, locks, SQL statements, throughput, server variables, and slow‑query analysis, while also offering practical tips for interpreting and optimizing the results.

MySQLmonitoringslow-query
0 likes · 10 min read
Master MySQL Monitoring with Built‑in SHOW Commands: A Complete Guide
Java Architect Essentials
Java Architect Essentials
Sep 12, 2022 · Databases

Why MySQL Discourages UUIDs as Primary Keys: Performance Comparison with Auto‑Increment and Random Keys

This article investigates MySQL's recommendation against using UUIDs as primary keys by creating three tables (auto‑increment, UUID, and random snowflake IDs), benchmarking insert speeds with Spring Boot/JdbcTemplate, analyzing index structures, and discussing the advantages and drawbacks of each key strategy.

MySQLauto_incrementperformance
0 likes · 10 min read
Why MySQL Discourages UUIDs as Primary Keys: Performance Comparison with Auto‑Increment and Random Keys
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 9, 2022 · Databases

SQLE 1.2209.0-pre1 Release Notes and Feature Overview

The preview release SQLE 1.2209.0-pre1 introduces OceanBase TopSQL auditing, Alibaba Cloud RDS MySQL audit‑log support, and a sub‑query nesting rule, while providing project background, download links, demo environments, and a detailed list of new features and release notes for database professionals.

Database ToolsMySQLOceanBase
0 likes · 5 min read
SQLE 1.2209.0-pre1 Release Notes and Feature Overview
Architecture Digest
Architecture Digest
Sep 9, 2022 · Databases

MySQL Replication, High Availability, and Sharding Strategies

This article explains the evolution from single‑node MySQL to master‑slave replication, various replication modes, high‑availability solutions such as MHA and MGR, and the challenges and techniques of vertical and horizontal sharding for scaling large‑scale internet applications.

MySQLdatabase scalingdistributed transactions
0 likes · 12 min read
MySQL Replication, High Availability, and Sharding Strategies
ITPUB
ITPUB
Sep 8, 2022 · Databases

Master MySQL Performance: 5 Key Optimization Strategies You Must Know

This guide explores five essential dimensions of MySQL performance tuning—including connection configuration, architectural choices such as caching and read‑write splitting, optimizer settings, storage engine selection, and schema design—providing concrete commands, formulas, and best‑practice recommendations to accelerate query execution and reduce load.

Database ArchitectureMySQLPerformance tuning
0 likes · 20 min read
Master MySQL Performance: 5 Key Optimization Strategies You Must Know
ITPUB
ITPUB
Sep 6, 2022 · Databases

From Monolith to Sharded MySQL: A Complete End‑to‑End Sharding Case Study

This article walks through a real‑world large‑scale MySQL sharding project, covering business refactoring, storage architecture design, data migration, incremental upgrades, best‑practice tips, and stability safeguards, while sharing concrete steps, pitfalls, and lessons learned from start to production rollout.

MySQLShardingStability
0 likes · 27 min read
From Monolith to Sharded MySQL: A Complete End‑to‑End Sharding Case Study
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 6, 2022 · Databases

Understanding MySQL Crash Recovery and the Role of Redo Logs

This article explains how MySQL performs crash recovery by using Redo logs, doublewrite buffers, undo tablespace handling, transaction subsystem initialization, and the processing of active, prepared, and committed transactions to restore data pages and ensure consistency after an unexpected shutdown.

DoublewriteInnoDBMySQL
0 likes · 28 min read
Understanding MySQL Crash Recovery and the Role of Redo Logs
IT Services Circle
IT Services Circle
Sep 5, 2022 · Backend Development

From Chengdu COVID Testing System Crash to High‑Concurrency Architecture: Lessons for Backend Engineers

The article examines the Chengdu COVID‑19 testing system failure, analyzes its root causes such as oversized MySQL tables and insufficient load handling, and then presents a step‑by‑step high‑concurrency roadmap—including single‑machine, service‑database separation, caching, load balancing, read/write splitting, sharding, hardware and DNS load balancing—to help backend developers design scalable systems.

Backend ArchitectureMySQLdatabase sharding
0 likes · 7 min read
From Chengdu COVID Testing System Crash to High‑Concurrency Architecture: Lessons for Backend Engineers
IT Services Circle
IT Services Circle
Sep 5, 2022 · Databases

September 2023 DB-Engines Database Popularity Rankings Overview

The September 2023 DB-Engines ranking update shows Oracle’s steep decline, while MySQL and MongoDB gain points, and presents the top ten databases across relational, key‑value, document, time‑series, and graph categories along with the five metrics used to calculate popularity.

DB-EnginesMongoDBMySQL
0 likes · 3 min read
September 2023 DB-Engines Database Popularity Rankings Overview
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 5, 2022 · Databases

Investigation of DBLE "no handler" Log Entries and MySQL Connection‑Timeout Error Handling

This article investigates why DBLE repeatedly logs "no handler" messages by analyzing DBLE and MySQL logs, using Arthas to trace the call chain, reproducing the scenario with timeout settings, capturing network traffic, and explaining the MySQL 8.0.24 error‑packet behavior that leads to the observed logs.

ArthasBackend DevelopmentDBLE
0 likes · 12 min read
Investigation of DBLE "no handler" Log Entries and MySQL Connection‑Timeout Error Handling
Programmer DD
Programmer DD
Sep 5, 2022 · Databases

What’s Driving the Latest DB‑Engines Rankings? Oracle’s Drop, MySQL & MongoDB Surge

The September DB‑Engines ranking shows Oracle’s steep decline while MySQL and MongoDB climb, presents top‑10 lists for relational, key‑value, document, time‑series and graph databases, explains the five metrics behind the scores, and advises professionals to choose databases based on business needs rather than pure popularity.

DB-EnginesDatabasesMongoDB
0 likes · 4 min read
What’s Driving the Latest DB‑Engines Rankings? Oracle’s Drop, MySQL & MongoDB Surge
IT Architects Alliance
IT Architects Alliance
Sep 4, 2022 · Databases

Mastering MySQL: From Replication to High Availability and Sharding Strategies

This article examines why single-node databases no longer meet modern internet workloads, explores MySQL replication models (master‑slave, asynchronous, semi‑synchronous, group replication), discusses high‑availability solutions such as MHA, MGR and Orchestrator, and outlines vertical and horizontal sharding techniques along with their trade‑offs.

Database ArchitectureMGRMHA
0 likes · 13 min read
Mastering MySQL: From Replication to High Availability and Sharding Strategies
Aikesheng Open Source Community
Aikesheng Open Source Community
Sep 2, 2022 · Databases

SQLE 1.2208.0 Release Notes – New Features, MySQL Audit Rules, OceanBase Support, and Reporting Dashboard

The SQLE 1.2208.0 release introduces intelligent scanning for Alibaba Cloud RDS MySQL slow logs, adds numerous MySQL audit rules, opens enterprise‑level rules to the community, provides new OceanBase for MySQL audit rules, a reporting statistics page, PostgreSQL analysis support, and several scenario‑based audit enhancements along with many optimizations and bug fixes.

Database AuditingMySQLOceanBase
0 likes · 9 min read
SQLE 1.2208.0 Release Notes – New Features, MySQL Audit Rules, OceanBase Support, and Reporting Dashboard
Programmer DD
Programmer DD
Sep 2, 2022 · Backend Development

Speed Up MyBatis Batch Inserts: Avoid foreach Pitfalls with ExecutorType.BATCH

An in‑depth guide explains why using MyBatis’s foreach for bulk inserts can cause severe performance degradation, especially with large tables, and demonstrates how switching to ExecutorType.BATCH or limiting batch sizes to 20‑50 rows dramatically reduces insertion time from minutes to seconds.

Batch InsertExecutorType.BATCHJava
0 likes · 10 min read
Speed Up MyBatis Batch Inserts: Avoid foreach Pitfalls with ExecutorType.BATCH
Programmer DD
Programmer DD
Sep 2, 2022 · Databases

Unlock MySQL Binlog: Powering Replication and Real‑World Business Use Cases

This article explains MySQL’s binlog, how it enables master‑slave replication, and explores three practical business uses—data heterogeneity, cache synchronization, and task dispatch—showing how a middleware that pretends to be a slave can leverage binlog events to improve system architecture and performance.

CachingMySQLbinlog
0 likes · 7 min read
Unlock MySQL Binlog: Powering Replication and Real‑World Business Use Cases
dbaplus Community
dbaplus Community
Aug 29, 2022 · Databases

Why Parallel DELETEs on a MySQL Table Trigger Lock Wait Timeouts

When trying to change a table’s primary key from int to bigint, a 500‑million‑row MySQL table required data archiving and a bulk MODIFY, but parallel DELETE statements caused lock‑wait timeouts; experiments reveal that under REPEATABLE READ the range scan locks the boundary row, leading to contention.

DeleteLarge TablesLock
0 likes · 11 min read
Why Parallel DELETEs on a MySQL Table Trigger Lock Wait Timeouts
dbaplus Community
dbaplus Community
Aug 25, 2022 · Backend Development

Mastering Distributed Locks: From Basics to Redlock and Beyond

This comprehensive guide explains why distributed locks are needed, outlines their three essential properties, compares common implementations such as Redis, MySQL, ZooKeeper, and Redlock, discusses pitfalls like non‑atomic operations and lock expiration, and presents correct patterns using atomic commands, Lua scripts, watchdogs, and fencing tokens.

LuaMySQLRedis
0 likes · 37 min read
Mastering Distributed Locks: From Basics to Redlock and Beyond
Java Captain
Java Captain
Aug 25, 2022 · Databases

Optimizing MyBatis Batch Inserts: Reducing CPU Usage and Improving Performance

The article explains why MyBatis foreach‑based batch inserts can cause extreme CPU usage and long execution times, demonstrates how combining multiple VALUES into a single INSERT or using ExecutorType.BATCH dramatically improves performance, and provides practical code examples and sizing recommendations.

Batch InsertExecutorType.BATCHMyBatis
0 likes · 8 min read
Optimizing MyBatis Batch Inserts: Reducing CPU Usage and Improving Performance
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 25, 2022 · Databases

Understanding Data Consistency in MySQL Semi‑Synchronous Replication and HA Failover

This article explains the principles of MySQL semi‑synchronous replication, analyzes how data consistency is maintained during high‑availability failover, presents detailed step‑by‑step transaction flow, discusses scenarios causing GTID divergence, and offers testing methods and remediation techniques for DBA practitioners.

DBAGTIDMySQL
0 likes · 14 min read
Understanding Data Consistency in MySQL Semi‑Synchronous Replication and HA Failover
Programmer DD
Programmer DD
Aug 25, 2022 · Databases

Why MySQL JDBC Driver Misinterprets CST and How to Fix the 13‑Hour Time Shift

This article investigates a puzzling 13‑hour time discrepancy caused by the MySQL 8.x JDBC driver interpreting the ambiguous CST timezone as America/Chicago, explains the underlying driver code and JDK timezone mappings, and provides multiple practical solutions including server settings, driver parameters, and official fixes.

CSTJDBCJava
0 likes · 17 min read
Why MySQL JDBC Driver Misinterprets CST and How to Fix the 13‑Hour Time Shift
IT Services Circle
IT Services Circle
Aug 24, 2022 · Databases

Data Consistency Between MySQL and Redis: Strategies and Best Practices

This article examines common pitfalls and six practical strategies for maintaining data consistency between MySQL and Redis caches, comparing naive approaches with optimal solutions such as cache double‑delete, asynchronous serialization via message queues, and binlog‑driven eventual consistency, and offers recommendations for real‑time and eventual consistency scenarios.

Cache ConsistencyDatabaseMessage queue
0 likes · 8 min read
Data Consistency Between MySQL and Redis: Strategies and Best Practices
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 23, 2022 · Databases

DBLE Cache Mechanism: Primary‑Key Routing Issue, Diagnosis and Resolution

This article examines the DBLE distributed database middleware cache, reproduces a primary‑key update query that returns incomplete results due to stale routing cache, analyzes cache contents via the management console, explains the cache’s behavior and limitations, and shows how disabling the primary‑key cache restores correct query routing.

CacheDBLEMySQL
0 likes · 10 min read
DBLE Cache Mechanism: Primary‑Key Routing Issue, Diagnosis and Resolution
Big Data Technology & Architecture
Big Data Technology & Architecture
Aug 23, 2022 · Big Data

Using Flink Broadcast State for Dynamic Configuration Updates and Real‑Time Data Enrichment

This article explains how Flink's Broadcast State feature can be used to dynamically update processing rules and enrich streaming events with user information from MySQL, showing configuration, code examples, key considerations, and runtime results that demonstrate real‑time adaptability without restarting the job.

Broadcast StateDynamic ConfigurationFlink
0 likes · 15 min read
Using Flink Broadcast State for Dynamic Configuration Updates and Real‑Time Data Enrichment
Liangxu Linux
Liangxu Linux
Aug 22, 2022 · Databases

Why MySQL Unique Indexes Fail with NULL and How to Fix Them

This article explains why a MySQL UNIQUE index does not prevent duplicate rows when indexed columns contain NULL, explores the complications of logical‑delete tables, and presents practical solutions such as incrementing delete status, adding timestamps, delete‑id keys, hash fields, and proper batch inserts.

Database DesignIndex OptimizationLogical Delete
0 likes · 15 min read
Why MySQL Unique Indexes Fail with NULL and How to Fix Them
macrozheng
macrozheng
Aug 21, 2022 · Databases

Top Free MySQL Client Tools You Should Try

This article reviews popular free MySQL client tools—including MySQL Workbench, phpMyAdmin, HeidiSQL, Sequel Pro, DBeaver, and command‑line utilities—highlighting their key features, platform support, and download links, helping users choose a cost‑effective solution for database management.

DBeaverDatabase clientHeidiSQL
0 likes · 8 min read
Top Free MySQL Client Tools You Should Try
Architect's Guide
Architect's Guide
Aug 21, 2022 · Databases

Relational Database Design with MySQL: ER Modeling, Normalization, Storage Engine, Charset, Data Types, and Index Design

This article explains relational database design using MySQL, covering ER modeling, BCNF and 3NF normalization, storage engine and charset choices, data type selection, and index design, illustrated with examples and practical guidelines for building a student course selection system.

Data TypesDatabase DesignER Model
0 likes · 15 min read
Relational Database Design with MySQL: ER Modeling, Normalization, Storage Engine, Charset, Data Types, and Index Design
dbaplus Community
dbaplus Community
Aug 18, 2022 · Databases

Mastering MySQL Naming Conventions: From Schemas to Indexes

This guide presents comprehensive MySQL naming standards covering database objects, schemas, tables, columns, indexes, views, stored procedures, functions, triggers, constraints, and users, along with design principles for storage engines, character sets, table structures, and SQL query best practices.

MySQLSQL Standardsnaming conventions
0 likes · 21 min read
Mastering MySQL Naming Conventions: From Schemas to Indexes
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 16, 2022 · Databases

Resolving Xtrabackup Backup Failures Caused by Too Many Open Files in MySQL

This article explains why Percona Xtrabackup backups of MySQL 5.7 can fail with "Too many open files" errors, demonstrates how to reproduce the issue under both non‑root and root users, analyzes the open‑files‑limit settings, and provides practical solutions to adjust system and user limits for successful backups.

Database AdministrationLinuxMySQL
0 likes · 12 min read
Resolving Xtrabackup Backup Failures Caused by Too Many Open Files in MySQL
Programmer DD
Programmer DD
Aug 16, 2022 · Databases

Master MySQL Monitoring with Built‑in SHOW Commands: A Complete Guide

This article explains how to collect comprehensive MySQL performance metrics—including connections, buffer cache, locks, statement counts, throughput, server variables, and slow‑query analysis—using only MySQL's native SHOW commands, providing a fast, low‑overhead monitoring solution.

Database MonitoringMetricsMySQL
0 likes · 11 min read
Master MySQL Monitoring with Built‑in SHOW Commands: A Complete Guide
Zhuanzhuan Tech
Zhuanzhuan Tech
Aug 16, 2022 · Databases

Understanding Index Height and Page I/O in MySQL InnoDB

This article explains how the height of MySQL InnoDB B+‑tree indexes determines the number of page I/O operations for different query types, provides theoretical calculations of index height, and shows practical methods using information_schema and hexdump to inspect the actual index height of tables.

B+TreeHexdumpIndex Height
0 likes · 12 min read
Understanding Index Height and Page I/O in MySQL InnoDB
macrozheng
macrozheng
Aug 16, 2022 · Databases

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

This article explores a common MySQL InnoDB pitfall where unique indexes fail to prevent duplicate rows, explains how NULL values and logical deletion affect uniqueness, and presents practical strategies—including composite keys, delete status counters, timestamps, hash fields, and Redis locks—to enforce true uniqueness.

Database DesignLogical DeleteMySQL
0 likes · 14 min read
Why MySQL Unique Indexes Still Allow Duplicates and How to Fix Them
Liangxu Linux
Liangxu Linux
Aug 15, 2022 · Databases

Why MySQL Picks a Full Table Scan Over an Index with ORDER BY id LIMIT 1

A MySQL 5.6+ optimizer bug causes queries that filter by uid and order by id with a small LIMIT to use a costly full table scan instead of the appropriate idx_uid_stat index, and the article explains the root cause, shows optimizer_trace output, and offers two practical work‑arounds.

FORCE INDEXFull Table ScanMySQL
0 likes · 8 min read
Why MySQL Picks a Full Table Scan Over an Index with ORDER BY id LIMIT 1
Python Programming Learning Circle
Python Programming Learning Circle
Aug 15, 2022 · Databases

Using Python DB‑API to Operate MySQL: PyMySQL Basics, Connection Pooling, and Safe SQL Practices

This article introduces Python's DB‑API, lists supported databases, demonstrates how to install and use PyMySQL for basic CRUD operations, shows techniques for preventing SQL injection, and explains two connection‑pooling models with DBUtils, including code examples and a brief promotional note at the end.

DB-APIDatabase Connection PoolMySQL
0 likes · 17 min read
Using Python DB‑API to Operate MySQL: PyMySQL Basics, Connection Pooling, and Safe SQL Practices
dbaplus Community
dbaplus Community
Aug 14, 2022 · Databases

Master MySQL Performance: 12 Proven SQL Optimization Techniques

This article explains MySQL's internal architecture and provides twelve practical SQL optimization strategies—including avoiding subqueries, using IN instead of OR, efficient pagination, minimizing ORDER BY, batch inserts, selective column retrieval, proper JOIN handling, and index best practices—to dramatically improve database query performance.

Database PerformanceMySQLQuery Tuning
0 likes · 20 min read
Master MySQL Performance: 12 Proven SQL Optimization Techniques
Su San Talks Tech
Su San Talks Tech
Aug 13, 2022 · Databases

Why MySQL LIMIT offset slows down deep pagination and how to fix it

This article explains how MySQL processes LIMIT with an offset, why large offsets cause slower queries and deep‑pagination problems, and presents practical optimization techniques such as id‑based pagination, sub‑queries, and index‑aware strategies to improve performance.

LIMITMySQLdeep pagination
0 likes · 14 min read
Why MySQL LIMIT offset slows down deep pagination and how to fix it
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 12, 2022 · Databases

SQLE 1.2208.0-pre2 Release Notes: Project Overview, New Features, and Full Release Information

The preview release SQLE 1.2208.0-pre2 introduces a comprehensive report statistics page for the enterprise edition, details the project's purpose, provides resource links, enumerates new feature items such as work‑order metrics and license usage, and lists bug fixes and links to prior versions.

Database AuditingMySQLRelease Notes
0 likes · 7 min read
SQLE 1.2208.0-pre2 Release Notes: Project Overview, New Features, and Full Release Information
Top Architect
Top Architect
Aug 10, 2022 · Backend Development

Understanding Spring @Transactional Rollback Behavior and Exception Handling

This article demonstrates how Spring's @Transactional annotation rolls back transactions only for RuntimeException subclasses, shows practical MySQL update tests that trigger ArithmeticException, and explains how to configure rollback for checked exceptions using rollbackFor, with complete code examples.

Exception HandlingJavaMySQL
0 likes · 5 min read
Understanding Spring @Transactional Rollback Behavior and Exception Handling
Su San Talks Tech
Su San Talks Tech
Aug 8, 2022 · Databases

Mastering MySQL MVCC: How InnoDB Achieves Consistent Reads

This article demystifies MySQL's Multi‑Version Concurrency Control (MVCC) by explaining its Undo Log and Read View mechanisms, showing how InnoDB implements read‑committed and repeatable‑read isolation without locking, and illustrating the process with clear examples and diagrams.

Concurrency ControlInnoDBMVCC
0 likes · 13 min read
Mastering MySQL MVCC: How InnoDB Achieves Consistent Reads
Programmer DD
Programmer DD
Aug 8, 2022 · Databases

Why Docker May Not Be Ideal for MySQL: Risks and Workarounds

This article examines the challenges of running MySQL in Docker containers, highlighting data safety concerns, I/O performance bottlenecks, statefulness issues, and resource isolation limits, while also outlining scenarios where containerization can work and offering practical mitigation strategies.

ContainersData SecurityDocker
0 likes · 7 min read
Why Docker May Not Be Ideal for MySQL: Risks and Workarounds
Architect's Guide
Architect's Guide
Aug 8, 2022 · Backend Development

Cache Consistency Strategies: Updating Database and Cache, Deleting Cache, and Handling Inconsistencies

The article explains why caching is essential for high‑traffic read‑heavy services, analyzes the consistency problems that arise when data exists simultaneously in MySQL and Redis, compares four cache‑update strategies, and provides practical recommendations such as using expiration, delayed double‑delete, message queues, and binlog subscription to achieve eventual consistency.

BackendCache ConsistencyMySQL
0 likes · 18 min read
Cache Consistency Strategies: Updating Database and Cache, Deleting Cache, and Handling Inconsistencies
dbaplus Community
dbaplus Community
Aug 7, 2022 · Databases

Mastering MySQL Performance: Practical Strategies for Slow‑SQL Optimization

This comprehensive guide examines why slow SQL queries degrade system performance, outlines key factors such as data volume, access patterns, and processing methods, and provides concrete optimization techniques, case studies, index design principles, and advanced features like MRR and index push‑down for MySQL‑InnoDB.

InnoDBMySQLPerformance tuning
0 likes · 14 min read
Mastering MySQL Performance: Practical Strategies for Slow‑SQL Optimization
ITPUB
ITPUB
Aug 7, 2022 · Databases

Why MySQL Unique Indexes Still Let Duplicates Slip Through and How to Prevent Them

This article examines a MySQL InnoDB pitfall where a unique index fails to block duplicate rows—especially when indexed columns contain NULL values or when logical deletion is used—and presents practical solutions such as adjusting index columns, adding timestamps, delete status counters, hash fields, and proper bulk‑insert strategies.

Logical DeleteMySQLNull Handling
0 likes · 13 min read
Why MySQL Unique Indexes Still Let Duplicates Slip Through and How to Prevent Them
21CTO
21CTO
Aug 6, 2022 · Databases

August 2023 DB-Engines Ranking: Oracle Drops, MySQL & MongoDB Surge

The August 2023 DB‑Engines ranking shows Oracle’s steep 19.5‑point drop, while MySQL and MongoDB surge, PostgreSQL continues rising, and the top‑10 list highlights shifts across relational, key‑value, and document databases, with methodology based on search, job, and community metrics.

DB-EnginesDatabasesMySQL
0 likes · 4 min read
August 2023 DB-Engines Ranking: Oracle Drops, MySQL & MongoDB Surge
Java Backend Technology
Java Backend Technology
Aug 6, 2022 · Backend Development

How to Prevent Coupon Over‑Issuing in High‑Concurrency Scenarios

The article analyzes why a coupon‑distribution feature can issue more coupons than available under heavy load, explains the root cause of concurrent stock deductions, and presents four practical solutions—including Java synchronized blocks, SQL row‑level locking, Redis distributed locks, and Redisson—to reliably prevent over‑issuance.

BackendCouponJava
0 likes · 11 min read
How to Prevent Coupon Over‑Issuing in High‑Concurrency Scenarios
dbaplus Community
dbaplus Community
Aug 6, 2022 · Databases

Mastering MySQL JSON: From Basics to Advanced Partial Updates

This comprehensive guide explains MySQL's native JSON data type, its advantages over text storage, detailed CRUD operations, indexing strategies, migration from TEXT columns, the powerful Partial Updates feature, performance benchmarks, and a wide range of JSON functions with practical examples.

FunctionsJSONMySQL
0 likes · 39 min read
Mastering MySQL JSON: From Basics to Advanced Partial Updates
Java Backend Technology
Java Backend Technology
Aug 5, 2022 · Databases

Why Store IPv4 Addresses as UNSIGNED INT in MySQL? Benefits, Drawbacks & Java Example

This article explains why using a 32‑bit UNSIGNED INT to store IPv4 addresses in MySQL saves space and improves query performance, outlines the trade‑offs such as readability, shows MySQL conversion functions, discusses IPv6 alternatives, and provides Java code for converting between string and numeric representations.

Database PerformanceIP addressJava
0 likes · 5 min read
Why Store IPv4 Addresses as UNSIGNED INT in MySQL? Benefits, Drawbacks & Java Example
Top Architect
Top Architect
Aug 4, 2022 · Databases

Implementing Multi‑Business‑Unit Sales Statistics Queries with Row‑by‑Row Comparison in MySQL

The article explains how to query sales statistics for multiple business units and their associated products in MySQL, compares several implementation strategies such as looping, OR‑concatenation, mixed filtering, and finally adopts the SQL‑92 row‑by‑row comparison technique to achieve a single‑query solution that respects indexing and corporate coding standards.

Dynamic SQLMySQLPerformance Optimization
0 likes · 8 min read
Implementing Multi‑Business‑Unit Sales Statistics Queries with Row‑by‑Row Comparison in MySQL
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 4, 2022 · Databases

Analysis of MySQL Router “Too Many Connections” Error in Versions 8.0.29/8.0.30 and Work‑around

The article investigates why MySQL Router 8.0.29/8.0.30 reports “ERROR 1040 (HY000): Too many connections to MySQL Router” even when the backend MySQL server has only a few connections, reproduces the issue, analyzes packet traces, and concludes that the problem exists in those versions but not in 8.0.28 or 8.0.21, likely due to a new connection‑pooling feature.

Connection PoolingMySQLMySQL Router
0 likes · 7 min read
Analysis of MySQL Router “Too Many Connections” Error in Versions 8.0.29/8.0.30 and Work‑around
Su San Talks Tech
Su San Talks Tech
Aug 4, 2022 · Databases

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

This article explains why a unique index on a MySQL InnoDB table may still permit duplicate rows, especially when indexed columns contain NULL values or when logical deletion is used, and presents practical solutions such as adjusting index fields, adding timestamps, hash columns, or redesigning delete logic.

Logical DeleteMySQLNull Handling
0 likes · 14 min read
Why MySQL Unique Indexes Still Allow Duplicates and How to Fix Them
Java High-Performance Architecture
Java High-Performance Architecture
Aug 2, 2022 · Databases

Why MySQL IN Subqueries Can Be So Slow and How to Fix Them

This article examines why a MySQL query that uses an IN subquery on a massive users table becomes extremely slow, analyzes the execution plan revealing materialized temporary tables and semi‑join optimization, and demonstrates how disabling the optimizer or rewriting the query restores index usage and dramatically improves performance.

MySQLSemi-Joinexecution plan
0 likes · 8 min read
Why MySQL IN Subqueries Can Be So Slow and How to Fix Them
Top Architect
Top Architect
Aug 2, 2022 · Databases

Understanding MySQL Execution Process: Connectors, Permissions, Cache, Parser, Optimizer, and Executor

This article explains the complete MySQL execution flow, covering the connector's duties, permission tables, caching behavior, parsing of SQL statements, optimizer decision‑making, executor interaction with storage engines, processlist states, logical query order, and practical tips for ordering WHERE‑clause conditions.

CacheExecution ProcessMySQL
0 likes · 11 min read
Understanding MySQL Execution Process: Connectors, Permissions, Cache, Parser, Optimizer, and Executor
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 2, 2022 · Databases

Using Generated Invisible Primary Keys (GIPK) in MySQL 8.0.30

This article explains the new MySQL 8.0.30 feature that automatically generates invisible primary keys for InnoDB tables without explicit primary keys, demonstrates how to enable and use it, discusses DDL and replication implications, and outlines related limitations and backup considerations.

GIPKInnoDBInvisible Primary Key
0 likes · 12 min read
Using Generated Invisible Primary Keys (GIPK) in MySQL 8.0.30
Aikesheng Open Source Community
Aikesheng Open Source Community
Aug 1, 2022 · Databases

MySQL SELECT Query Crash Analysis and Resolution

This article investigates a MySQL crash triggered by a specific SELECT statement, analyzes the stack trace and optimizer behavior that leads to an invalid memory access, and presents three practical solutions including disabling DuplicateWeedout, upgrading MySQL, and normalizing table character sets.

CrashDuplicateWeedoutMySQL
0 likes · 7 min read
MySQL SELECT Query Crash Analysis and Resolution
Aikesheng Open Source Community
Aikesheng Open Source Community
Jul 30, 2022 · Databases

Weekly Technical Newsletter: MySQL Releases, Linux I/O Optimization, Monitoring Tips, and SQLE Updates

This weekly newsletter curates top community technical shares covering MySQL 8.0.30 GA, master‑slave replication recovery, InnoDB parameters, Linux I/O optimization, two‑phase commit, Prometheus‑Grafana monitoring pitfalls, as well as the latest SQLE 1.2207.0 release, development progress, and upcoming plans.

Linux I/OMySQLmonitoring
0 likes · 4 min read
Weekly Technical Newsletter: MySQL Releases, Linux I/O Optimization, Monitoring Tips, and SQLE Updates
Architecture Digest
Architecture Digest
Jul 29, 2022 · Databases

Guide to Setting Up MySQL Master‑Slave Replication with MyBatis‑Plus, ShardingSphereJDBC and Spring Boot for Read‑Write Splitting

This tutorial explains how to configure MySQL master‑slave replication using Docker, set up read‑write splitting with ShardingSphereJDBC, integrate MyBatis‑Plus, and build a Spring Boot application that demonstrates write operations on the master and read operations on the slave.

MyBatis-PlusMySQLShardingSphere
0 likes · 16 min read
Guide to Setting Up MySQL Master‑Slave Replication with MyBatis‑Plus, ShardingSphereJDBC and Spring Boot for Read‑Write Splitting
Liangxu Linux
Liangxu Linux
Jul 28, 2022 · Databases

Why Your MySQL Queries Are Slow and How to Fix Common Mistakes

This article examines frequent MySQL performance pitfalls—such as misuse of LIMIT, implicit type conversion, sub‑query updates, mixed sorting, EXISTS clauses, and condition push‑down failures—and demonstrates how rewriting queries with proper indexes, JOINs, early range reduction, and WITH statements can dramatically reduce execution time.

DatabaseIndex UsageMySQL
0 likes · 15 min read
Why Your MySQL Queries Are Slow and How to Fix Common Mistakes
Top Architect
Top Architect
Jul 28, 2022 · Databases

SQL Optimization Steps and Common Scenarios: Index Usage, EXPLAIN, Profiling, and Trace

This article explains how to identify and resolve performance bottlenecks in MySQL by locating slow queries, analyzing execution plans with EXPLAIN, focusing on type, rows and extra information, using profiling and trace tools, and applying practical optimization techniques illustrated through multiple real‑world cases.

Database OptimizationMySQLPerformance tuning
0 likes · 11 min read
SQL Optimization Steps and Common Scenarios: Index Usage, EXPLAIN, Profiling, and Trace
政采云技术
政采云技术
Jul 28, 2022 · Databases

Analyzing and Resolving MySQL Next‑Key Lock Deadlocks: A Practical Case Study

This article walks through a real MySQL deadlock scenario, explaining the four necessary deadlock conditions, illustrating how Next‑Key locks on non‑unique indexes cause gap locks, and presenting step‑by‑step analysis, experimental verification, and practical recommendations to avoid such deadlocks in production systems.

DatabaseMySQLNext-key Lock
0 likes · 15 min read
Analyzing and Resolving MySQL Next‑Key Lock Deadlocks: A Practical Case Study
Aikesheng Open Source Community
Aikesheng Open Source Community
Jul 28, 2022 · Databases

Understanding Dble Startup Configuration Validation and Common Failure Cases (Version 3.22.01.0)

This article explains how Dble validates its configuration files during startup, lists the main configuration file types, and walks through typical startup failure examples—such as port conflicts, syntax errors, and backend MySQL connectivity issues—providing step‑by‑step troubleshooting guidance for new users.

Database MiddlewareMySQLStartup
0 likes · 9 min read
Understanding Dble Startup Configuration Validation and Common Failure Cases (Version 3.22.01.0)