Tagged articles
5000 articles
Page 46 of 50
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 28, 2020 · Databases

Understanding and Practicing MySQL XA Distributed Transactions

This article explains MySQL's support for XA distributed transactions, describes the two‑phase commit process, details the XA syntax, and walks through a complete hands‑on example that transfers money between two databases using XA START, END, PREPARE, RECOVER and COMMIT commands.

XA Transactiondatabasedistributed-transaction
0 likes · 11 min read
Understanding and Practicing MySQL XA Distributed Transactions
Liangxu Linux
Liangxu Linux
Jun 27, 2020 · Databases

Mastering MySQL Indexes: Concepts, Types, and Implementation Details

This article explains the fundamentals of MySQL indexes, covering their conceptual purpose, logical classifications, underlying data structures such as hash, B‑Tree, and B+Tree, physical storage differences between clustered and non‑clustered indexes, and practical tips for effective index optimization.

B+TreeBTreeClustered Index
0 likes · 22 min read
Mastering MySQL Indexes: Concepts, Types, and Implementation Details
Top Architect
Top Architect
Jun 27, 2020 · Databases

MySQL Lock Mechanisms: Row‑Level, Table‑Level, Page‑Level Locks and Optimistic vs Pessimistic Concurrency Control

This article explains MySQL's locking mechanisms, detailing row‑level, table‑level, and page‑level locks, their characteristics and usage, and compares optimistic and pessimistic concurrency control, including implementation methods, storage‑engine specifics, deadlock causes, and strategies to avoid them.

InnoDBLocksOptimistic
0 likes · 13 min read
MySQL Lock Mechanisms: Row‑Level, Table‑Level, Page‑Level Locks and Optimistic vs Pessimistic Concurrency Control
Top Architect
Top Architect
Jun 26, 2020 · Backend Development

Design and Implementation of a Transactional Message Module Using RabbitMQ and MySQL

This article explains a lightweight transactional message solution for microservices that leverages RabbitMQ, MySQL, and Spring Boot to achieve eventual consistency, detailing design principles, compensation mechanisms, table schemas, and deployment considerations for high‑throughput asynchronous processing.

CompensationDistributed SystemsRabbitMQ
0 likes · 9 min read
Design and Implementation of a Transactional Message Module Using RabbitMQ and MySQL
Programmer DD
Programmer DD
Jun 25, 2020 · Backend Development

How to Build a Low‑Intrusive Transactional Message System with Spring Boot and RabbitMQ

This article explains a lightweight, low‑intrusive transactional message solution for microservices using Spring Boot, RabbitMQ, and MySQL, covering design principles, table schemas, transaction synchronization, compensation mechanisms, code implementation, and deployment considerations to achieve eventual consistency without sacrificing performance.

Distributed SystemsRabbitMQSpring Boot
0 likes · 24 min read
How to Build a Low‑Intrusive Transactional Message System with Spring Boot and RabbitMQ
Big Data Technology & Architecture
Big Data Technology & Architecture
Jun 25, 2020 · Databases

MySQL Replication, Data Sharding, and Distributed Database Deployment Overview

This article explains MySQL replication (master‑slave and master‑master), data sharding principles and implementations, and various distributed database deployment architectures, covering replication mechanisms, advantages, failure recovery, sharding strategies, middleware like Mycat, and scaling solutions for high‑availability systems.

Database ArchitectureReplicationdistributed databases
0 likes · 14 min read
MySQL Replication, Data Sharding, and Distributed Database Deployment Overview
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 23, 2020 · Databases

Understanding Half-Consistent Reads in InnoDB and Their Impact on Transactions

This article explains the concept of half‑consistent reads in MySQL InnoDB, describes the conditions under which they occur, presents two test cases with detailed lock‑waiting behavior, analyzes why certain sessions are blocked or not, and summarizes the optimization benefits for RC isolation level.

Database PerformanceHalf-Consistent ReadInnoDB
0 likes · 20 min read
Understanding Half-Consistent Reads in InnoDB and Their Impact on Transactions
Programmer DD
Programmer DD
Jun 23, 2020 · Databases

Master MySQL Basics: Schemas, Data Types, and Full CRUD Guide

This article provides a comprehensive MySQL tutorial covering schema concepts, data types, service control, database creation, table manipulation, and complete CRUD operations with practical command‑line examples and code snippets for beginners and intermediate users.

CRUDData Typescommands
0 likes · 15 min read
Master MySQL Basics: Schemas, Data Types, and Full CRUD Guide
Laravel Tech Community
Laravel Tech Community
Jun 22, 2020 · Databases

MySQL Optimization Tips Frequently Asked in Interviews

This article presents a comprehensive collection of MySQL performance‑tuning techniques—including proper use of EXPLAIN, limiting IN lists, selecting explicit columns, using LIMIT 1, avoiding costly ORDER BY RAND(), choosing between IN and EXISTS, preferring UNION ALL, applying full‑text indexes, and optimizing joins, pagination, and index usage—to help developers write faster, more efficient queries.

Database TuningSQL Optimizationindexing
0 likes · 10 min read
MySQL Optimization Tips Frequently Asked in Interviews
Java Captain
Java Captain
Jun 21, 2020 · Databases

Why Using SELECT * Is Inefficient in MySQL and How Indexes Improve Performance

Although many developers hear the advice to avoid using SELECT * in SQL, this article delves into the underlying reasons—such as increased parsing cost, unnecessary data transfer, extra I/O, and loss of covering-index optimization—while also explaining index concepts and best practices for MySQL performance.

Database PerformanceIndex Optimizationmysql
0 likes · 10 min read
Why Using SELECT * Is Inefficient in MySQL and How Indexes Improve Performance
Architecture Digest
Architecture Digest
Jun 21, 2020 · Databases

Optimizing Large-Scale MySQL Join Queries Using EXPLAIN

This article explains how to analyze and tune MySQL join queries with EXPLAIN, addressing issues like using temporary tables and filesort, and provides practical techniques—including STRAIGHT_JOIN and index strategies—to achieve sub‑second response times on tables with millions of rows.

Database PerformanceJOINexplain
0 likes · 6 min read
Optimizing Large-Scale MySQL Join Queries Using EXPLAIN
FunTester
FunTester
Jun 20, 2020 · Backend Development

Mastering MySQL CASE WHEN and MyBatis Dynamic Queries for Test Case Search

This article walks through building complex test‑case search queries using MySQL CASE WHEN, FIND_IN_SET, and MyBatis dynamic SQL, demonstrates converting asynchronous data fetches to synchronous calls with CountDownLatch in Spring, and provides complete Java bean and configuration examples.

AsyncBackendMyBatis
0 likes · 9 min read
Mastering MySQL CASE WHEN and MyBatis Dynamic Queries for Test Case Search
High Availability Architecture
High Availability Architecture
Jun 19, 2020 · Backend Development

Design and Implementation of a Traffic Replay System for Bilibili Membership Purchase Service

This article describes how Bilibili's Membership Purchase team built a Java‑based traffic replay platform using JVM‑Sandbox AOP, Kafka, and MySQL to capture real‑world request/response data, serialize it with JSON, and replay it for comprehensive regression testing of complex backend services.

KafkaMicroservicesSpring Cloud
0 likes · 14 min read
Design and Implementation of a Traffic Replay System for Bilibili Membership Purchase Service
Architecture Digest
Architecture Digest
Jun 19, 2020 · Databases

How Many Rows Can an InnoDB B+ Tree Store?

This article explains the storage units of InnoDB, how B+‑tree indexes are organized on pages, calculates the maximum number of rows a B+ tree can hold based on page size and pointer count, and shows how to determine the tree height from the tablespace file.

B+TreeInnoDBPage Size
0 likes · 9 min read
How Many Rows Can an InnoDB B+ Tree Store?
Beike Product & Technology
Beike Product & Technology
Jun 18, 2020 · Databases

Resolving Duplicate Income Splitting in a Financial System: Transaction Isolation, Spring Propagation, and Redis Lock

This article analyzes a financial system's duplicate income‑splitting bug caused by concurrent transactions, explains how MySQL isolation levels and Spring transaction propagation contributed to dirty reads, and presents two corrective approaches—adjusting transaction propagation and repositioning Redis locks—to ensure reliable data consistency.

databasemysqlredis
0 likes · 10 min read
Resolving Duplicate Income Splitting in a Financial System: Transaction Isolation, Spring Propagation, and Redis Lock
Programmer DD
Programmer DD
Jun 18, 2020 · Databases

How to Optimize MySQL Joins for Million‑Row Tables in Under 2 Seconds

This article explains how to use EXPLAIN to analyze MySQL join queries, identifies causes of temporary tables and filesorts, and provides practical techniques—including driver‑table selection, STRAIGHT_JOIN usage, and index strategies—to optimize two‑ and multi‑table joins so that million‑row results return within two seconds.

Database PerformanceJOINSQL Optimization
0 likes · 8 min read
How to Optimize MySQL Joins for Million‑Row Tables in Under 2 Seconds
FunTester
FunTester
Jun 18, 2020 · Backend Development

How to Read a Map from MySQL with MyBatis and Resolve ClassCastException

This article walks through extracting service‑host mappings from MySQL using MyBatis, handling a Long‑to‑String conversion error, and demonstrates an insert‑select SQL pattern that requires column aliases to avoid duplicate‑column errors, complete with XML and Java code examples.

BackendData MappingMyBatis
0 likes · 6 min read
How to Read a Map from MySQL with MyBatis and Resolve ClassCastException
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 17, 2020 · Databases

How to Safely Rename a MySQL Database

This article explains several reliable techniques for renaming a MySQL database—including full export/import with mysqldump, bulk table‑rename operations, and legacy binlog‑based approaches—while providing concrete command‑line examples, performance measurements, and step‑by‑step instructions for each method.

BackupDatabase Renamemigration
0 likes · 9 min read
How to Safely Rename a MySQL Database
MaGe Linux Operations
MaGe Linux Operations
Jun 16, 2020 · Databases

How to Benchmark MySQL Performance with mysqlslap and Sysbench

This guide explains how to use MySQL's built‑in mysqlslap tool and the third‑party sysbench utility to simulate concurrent client loads, adjust server settings, run read/write and I/O tests, and interpret the resulting performance metrics for database optimization.

IO testingPerformance TestingSysbench
0 likes · 14 min read
How to Benchmark MySQL Performance with mysqlslap and Sysbench
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 16, 2020 · Databases

Understanding and Optimizing MySQL Multi-Range Read (MRR)

This article explains MySQL's Multi-Range Read (MRR) optimization, demonstrates its performance impact through experiments, shows how to enable or disable MRR via optimizer_switch, and provides guidance on tuning related parameters such as mrr_cost_based and read_rnd_buffer_size for optimal query execution.

Database PerformanceMRRmysql
0 likes · 7 min read
Understanding and Optimizing MySQL Multi-Range Read (MRR)
Top Architect
Top Architect
Jun 16, 2020 · Databases

Performance Evaluation of Multi-Table Joins in MySQL and Oracle with Large Datasets

This article investigates the Alibaba Java Development Manual's recommendation against joining more than three tables by experimentally evaluating multi-table join performance in MySQL and Oracle using massive synthetic datasets, analyzing query execution times, indexing effects, and providing data generation scripts and detailed results.

Data GenerationJOIN optimizationOracle
0 likes · 13 min read
Performance Evaluation of Multi-Table Joins in MySQL and Oracle with Large Datasets
ITPUB
ITPUB
Jun 15, 2020 · Databases

Why Does Alibaba's Java Manual Ban Joins Over Three Tables? A Deep Performance Dive

This article investigates Alibaba's recommendation against joining more than three MySQL tables by designing experiments with synthetic data, measuring query performance on MySQL and Oracle, analyzing index impact, and providing full DDL and data‑generation scripts to explain the rule's practical limits.

Data GenerationJOINOracle
0 likes · 11 min read
Why Does Alibaba's Java Manual Ban Joins Over Three Tables? A Deep Performance Dive
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 15, 2020 · Databases

Diagnosing Slow SQL Execution in DBLE Due to Incorrect Stringhash Partition Configuration

An investigation of a DBLE performance issue revealed that identical sharding keys with the same stringhash rule failed to improve query speed because differing hashSlice configurations prevented proper partitioning, and after correcting the rule.xml function settings, the SQL executed efficiently with sub‑second response times.

DBLEDatabase ConfigurationSQL Performance
0 likes · 4 min read
Diagnosing Slow SQL Execution in DBLE Due to Incorrect Stringhash Partition Configuration
Java Captain
Java Captain
Jun 14, 2020 · Databases

MySQL Single‑Table Optimization, Indexing, Partitioning, and Sharding Strategies

This article presents comprehensive techniques for improving MySQL performance on large single tables, covering column choices, index design, query writing, engine selection, system parameters, hardware upgrades, read‑write splitting, caching, table partitioning, vertical and horizontal sharding, and guidance on selecting mature sharding solutions.

Database OptimizationPartitioningmysql
0 likes · 27 min read
MySQL Single‑Table Optimization, Indexing, Partitioning, and Sharding Strategies
Programmer DD
Programmer DD
Jun 14, 2020 · Backend Development

How to Quickly Build a MySQL Master‑Slave Cluster with Docker

This step‑by‑step guide shows how to use Docker on CentOS 7 to pull MySQL 5.7 images, configure master and slave my.cnf files, run containers, set up replication, and verify that a test database created on the master is automatically synchronized to the slave.

BackendContainerDocker
0 likes · 5 min read
How to Quickly Build a MySQL Master‑Slave Cluster with Docker
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 14, 2020 · Databases

2020 Stack Overflow Developer Survey: Database Popularity, Preferences, and Salary Insights

The 2020 Stack Overflow Developer Survey, involving nearly 65,000 developers, reveals MySQL as the most popular database, highlights Redis, PostgreSQL and Elasticsearch as the most loved, lists DB2 and Oracle as the most feared, and presents salary and career trends for database‑related roles worldwide.

Developer PreferencesStack Overflow Surveydatabases
0 likes · 5 min read
2020 Stack Overflow Developer Survey: Database Popularity, Preferences, and Salary Insights
ITPUB
ITPUB
Jun 13, 2020 · Databases

Why Does Alibaba Recommend No More Than Three Table Joins? MySQL vs Oracle Performance Test

The article investigates the Alibaba Java development manual's rule that joins involving more than three tables are prohibited, by designing massive MySQL and Oracle experiments, generating billions of rows, measuring query times, analyzing indexing effects, and concluding that the rule is MySQL‑specific and driven by large‑scale performance limits.

Database OptimizationJoin PerformanceOracle
0 likes · 11 min read
Why Does Alibaba Recommend No More Than Three Table Joins? MySQL vs Oracle Performance Test
MaGe Linux Operations
MaGe Linux Operations
Jun 12, 2020 · Databases

Master MySQL Performance Metrics: TPS, QPS, InnoDB Stats & Monitoring Tips

This article explains how to retrieve and interpret key MySQL performance metrics—including TPS, QPS, thread status, InnoDB I/O, buffer pool health, MyISAM statistics, temporary tables, response time, and replication lag—using mysqladmin, SHOW GLOBAL STATUS, and Percona tools, with practical calculation formulas and command examples.

InnoDBPerformance MonitoringQPS
0 likes · 8 min read
Master MySQL Performance Metrics: TPS, QPS, InnoDB Stats & Monitoring Tips
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 12, 2020 · Databases

Evaluating Whether pt-table-checksum Affects Business Performance

This article presents a hands‑on experiment that measures the performance impact of using pt‑table‑checksum on a MySQL master‑slave setup, explains the tool’s design choices such as reduced lock‑wait time and RR isolation, and concludes that its effect on production traffic is minimal when configured properly.

Database ReplicationInnoDBRepeatable Read
0 likes · 4 min read
Evaluating Whether pt-table-checksum Affects Business Performance
macrozheng
macrozheng
Jun 12, 2020 · Databases

Why Does MySQL Show Negative Balances? Unraveling MVCC and Isolation Levels

This article analyzes a production incident where concurrent MySQL transactions caused an over‑deduction of account balance, explains the underlying MVCC mechanism, consistency view rules, and how different isolation levels (RR vs RC) affect data visibility and lead to negative balances.

InnoDBMVCCconcurrency
0 likes · 12 min read
Why Does MySQL Show Negative Balances? Unraveling MVCC and Isolation Levels
Ops Development Stories
Ops Development Stories
Jun 12, 2020 · Operations

Step-by-Step Guide to Upgrading Zabbix 4.0→5.0 and Migrating Elasticsearch to 7.x

This article provides a comprehensive, ordered procedure for upgrading a Zabbix 4.0 monitoring system to version 5.0 using blue‑green deployment, backing up configurations, updating repositories, applying MySQL patches, and then migrating the associated Elasticsearch cluster from 6.1 to 7.x, including all necessary command‑line steps, configuration edits, and post‑upgrade validation.

ElasticsearchLinuxSystem Administration
0 likes · 11 min read
Step-by-Step Guide to Upgrading Zabbix 4.0→5.0 and Migrating Elasticsearch to 7.x
Laravel Tech Community
Laravel Tech Community
Jun 11, 2020 · Databases

MySQL Performance Optimization Techniques: Bulk Inserts, INSERT, GROUP BY, ORDER BY, OR, Nested Queries, and SQL Hints

This article presents a comprehensive guide to MySQL performance tuning, covering bulk‑insert optimizations, efficient INSERT statements, GROUP BY and ORDER BY improvements, OR‑condition handling, nested query replacement, and the use of SQL hints such as USE INDEX, IGNORE INDEX, and FORCE INDEX, with practical code examples and benchmark results.

Bulk InsertDatabase PerformanceQuery Tuning
0 likes · 13 min read
MySQL Performance Optimization Techniques: Bulk Inserts, INSERT, GROUP BY, ORDER BY, OR, Nested Queries, and SQL Hints
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 11, 2020 · Databases

Understanding MySQL Parallel Replication: Schema‑based MTS, Logical Clock, Write‑Set and Fairness Metrics

This article explains the evolution of MySQL parallel replay from schema‑based MTS to logical‑clock and write‑set mechanisms, shows how to configure and tune parallel replication, and introduces a Jain‑index based fairness metric for evaluating the optimal number of slave_parallel_workers.

fairness metricmysqlparallel replication
0 likes · 8 min read
Understanding MySQL Parallel Replication: Schema‑based MTS, Logical Clock, Write‑Set and Fairness Metrics
Architecture Digest
Architecture Digest
Jun 10, 2020 · Databases

Comprehensive MySQL Single‑Table Optimization and Scaling Strategies

This article presents a thorough guide to improving MySQL performance for large single tables, covering field choices, indexing best practices, query tuning, engine selection, system parameters, hardware upgrades, read/write separation, caching layers, partitioning, vertical and horizontal sharding, and compatible scalable database alternatives.

Database OptimizationPartitioningindexing
0 likes · 21 min read
Comprehensive MySQL Single‑Table Optimization and Scaling Strategies
Aikesheng Open Source Community
Aikesheng Open Source Community
Jun 9, 2020 · Databases

Implementing a Raw TCP MySQL Connection in Python

This article explains the MySQL client‑server handshake, details the sequence of packets exchanged during a TCP connection, and provides a complete Python implementation that builds a raw TCP socket to connect, authenticate, and communicate with a MySQL server without using a high‑level driver.

NetworkingPythonTCP
0 likes · 12 min read
Implementing a Raw TCP MySQL Connection in Python
Selected Java Interview Questions
Selected Java Interview Questions
Jun 8, 2020 · Databases

Comprehensive MySQL Interview Guide: Concepts, Indexes, Transactions, Storage Engines, and Optimization

This article provides an extensive overview of MySQL fundamentals for interview preparation, covering primary key concepts, index types and usage, transaction properties and isolation levels, storage engine differences, query execution order, performance tuning with EXPLAIN, lock mechanisms, replication strategies, and high‑concurrency solutions.

Storage EnginesTransactionsdatabase
0 likes · 49 min read
Comprehensive MySQL Interview Guide: Concepts, Indexes, Transactions, Storage Engines, and Optimization
macrozheng
macrozheng
Jun 8, 2020 · Databases

Why MySQL’s Index Choice Can Miss the Best Plan – A Deep Cost Analysis

This article examines how MySQL estimates execution costs for queries, explains why COUNT(*) can be optimal, demonstrates index selection with real‑world examples, and shows how optimizer_trace can reveal mismatches between estimated and actual performance.

Index OptimizationOptimizer_traceSQL Performance
0 likes · 10 min read
Why MySQL’s Index Choice Can Miss the Best Plan – A Deep Cost Analysis
dbaplus Community
dbaplus Community
Jun 7, 2020 · Databases

MySQL vs PostgreSQL: Which Open‑Source Database Wins for Your Projects?

The article compares MySQL and PostgreSQL across open‑source licensing, ACID compliance, SQL standard support, replication methods, concurrency control, performance, high‑availability solutions, external data sources, and storage models, highlighting each system’s strengths and weaknesses to help readers choose the most suitable database.

database comparisonmysqlopen‑source
0 likes · 15 min read
MySQL vs PostgreSQL: Which Open‑Source Database Wins for Your Projects?
Top Architect
Top Architect
Jun 7, 2020 · Databases

MySQL Performance Optimization: Data Volume, Concurrency, Index Design, and SQL Tuning

This article presents a comprehensive guide to MySQL performance improvement, covering maximum data volume, connection limits, query latency targets, practical implementation principles, optimal table design, index classification and tuning, as well as detailed SQL optimizations such as batch processing, operator rewriting, and pagination techniques.

Index OptimizationSQL Tuningmysql
0 likes · 16 min read
MySQL Performance Optimization: Data Volume, Concurrency, Index Design, and SQL Tuning
Selected Java Interview Questions
Selected Java Interview Questions
Jun 5, 2020 · Databases

MySQL Query Optimization Techniques and Common Pitfalls

This article explains MySQL execution order, highlights performance problems with large OFFSET LIMIT queries, demonstrates how implicit type conversion, sub‑query rewriting, EXISTS removal, condition push‑down, and intermediate result push‑down can dramatically improve query speed, and provides practical SQL rewrite examples.

JOINLIMITSQL Optimization
0 likes · 13 min read
MySQL Query Optimization Techniques and Common Pitfalls
Youzan Coder
Youzan Coder
Jun 5, 2020 · Databases

Monitoring MySQL Response Time (RT) with tcprstat and Query Response Time Plugin

The article defines MySQL response time as total request‑to‑reply latency, illustrates it with a travel analogy, and then details two monitoring solutions—Percona’s tcprstat utility that captures TCP‑level timings and the Query Response Time audit plugin that records latency distribution in INFORMATION_SCHEMA tables for analysis and Grafana visualization.

Performance MonitoringQuery Response Time PluginResponse Time
0 likes · 9 min read
Monitoring MySQL Response Time (RT) with tcprstat and Query Response Time Plugin
Meituan Technology Team
Meituan Technology Team
Jun 4, 2020 · Databases

Meituan MySQL Database Inspection System Architecture and Design

Meituan’s MySQL database inspection system uses a three‑layer architecture—execution agents managed by Crane, a metadata‑rich inspection database, and an integrated application UI—to run 64 automated checks, resolve over 8,000 hazards with sub‑four‑day remediation, and continuously improve automation and analytics.

Database InspectionOperationsSystem Architecture
0 likes · 11 min read
Meituan MySQL Database Inspection System Architecture and Design
ITPUB
ITPUB
Jun 3, 2020 · Databases

Why MySQL Ignored My Index: Charset Mismatch Triggers Full Table Scans

A MySQL join between a large and a small table ran for seconds because differing character sets forced implicit conversions that disabled the index, and the article shows how to diagnose the issue with EXPLAIN, fix it by aligning charsets, and avoid similar pitfalls.

CharsetJOINindex
0 likes · 7 min read
Why MySQL Ignored My Index: Charset Mismatch Triggers Full Table Scans
macrozheng
macrozheng
Jun 3, 2020 · Databases

Master MySQL EXPLAIN: Decode Execution Plans for Faster Queries

This article explains the purpose of the MySQL EXPLAIN command, details each column in its output (id, select_type, table, type, possible_keys, etc.), provides real‑world SQL examples, and shows how to interpret the plan to identify indexing, join, and sorting issues for query optimization.

Query PlanSQL Optimizationexplain
0 likes · 18 min read
Master MySQL EXPLAIN: Decode Execution Plans for Faster Queries
macrozheng
macrozheng
Jun 2, 2020 · Databases

Master MySQL Architecture: Storage Engines, Indexes, Transactions & Optimization

This comprehensive guide explains MySQL's layered architecture, storage engine plugins, index structures, transaction isolation levels, locking mechanisms, performance tuning techniques, partitioning, sharding, and replication, providing practical insights for developers and DBAs to optimize and scale MySQL deployments.

Storage Enginedatabaseindexing
0 likes · 77 min read
Master MySQL Architecture: Storage Engines, Indexes, Transactions & Optimization
Top Architect
Top Architect
Jun 1, 2020 · Backend Development

WeChat Mini Program CRUD with Spring Boot, MyBatis-Plus, and MySQL

This tutorial demonstrates how to build a simple CRUD application for a WeChat mini‑program by integrating a Spring Boot backend with MyBatis‑Plus, MySQL, and the mini‑program front‑end, covering environment setup, Maven configuration, database schema, API implementation, and client‑side pages.

CRUDMobile BackendSpringBoot
0 likes · 12 min read
WeChat Mini Program CRUD with Spring Boot, MyBatis-Plus, and MySQL
macrozheng
macrozheng
Jun 1, 2020 · Databases

Master DataGrip: Essential Tips for Efficient MySQL & MongoDB Management

This guide walks you through downloading DataGrip, configuring its appearance, creating MySQL and MongoDB data sources, managing tables, applying powerful SQL editing shortcuts, and leveraging export and execution‑plan features to write higher‑quality database code.

DataGripDatabase ToolsMongoDB
0 likes · 7 min read
Master DataGrip: Essential Tips for Efficient MySQL & MongoDB Management
Full-Stack Internet Architecture
Full-Stack Internet Architecture
Jun 1, 2020 · Databases

Guide to Upgrading MySQL from 5.7 to 8.0

This article provides a comprehensive step‑by‑step guide for DBAs to safely upgrade MySQL from version 5.7 to 8.0, covering motivations, compatibility checks, new features, preparation tasks, upgrade commands, post‑upgrade verification, and rollback considerations.

databasemigrationmysql
0 likes · 7 min read
Guide to Upgrading MySQL from 5.7 to 8.0
dbaplus Community
dbaplus Community
May 31, 2020 · Databases

Why Intel’s PAUSE Instruction Slows MySQL on Skylake CPUs and How to Fix It

This article examines how the increased latency of Intel's PAUSE instruction on Skylake CPUs creates a performance bottleneck for MySQL, details the profiling steps that identified ut_delay as the hotspot, and presents a series of optimizations—including spin‑wait parameter tuning and a MySQL 8.0 patch—that restore throughput on affected hardware.

CPU performancePAUSE instructionSpinlock
0 likes · 19 min read
Why Intel’s PAUSE Instruction Slows MySQL on Skylake CPUs and How to Fix It
ITPUB
ITPUB
May 28, 2020 · Databases

How UPSQL Proxy Implements MySQL Streaming to Boost Performance

This article explains the MySQL communication protocol, result‑set structure, client library interfaces, and the difference between store‑result and streaming modes, then details how UPSQL Proxy 2.4.0 adopts streaming to reduce latency and memory usage in distributed database environments.

Database MiddlewareResultSetStreaming
0 likes · 6 min read
How UPSQL Proxy Implements MySQL Streaming to Boost Performance
Ctrip Technology
Ctrip Technology
May 28, 2020 · Databases

Design and Implementation of Ctrip's Data Replicate Center (DRC) for MySQL Multi‑Active Replication

The article describes Ctrip's Data Replicate Center (DRC), a MySQL middleware that enables real‑time bidirectional replication across data‑center clusters, detailing its architecture, low‑latency optimizations, consistency mechanisms, DDL handling, monitoring, and future high‑availability improvements.

DRCDatabase MiddlewareGTID
0 likes · 16 min read
Design and Implementation of Ctrip's Data Replicate Center (DRC) for MySQL Multi‑Active Replication
Aikesheng Open Source Community
Aikesheng Open Source Community
May 28, 2020 · Databases

Creating Custom Extensions in MySQL Shell with JavaScript and Python

The article explains how MySQL Shell 8.0.17+ can be extended using JavaScript or Python to build reusable reports and plugins, describes the directory layout, provides a complete example of registering a report and a plugin that list tables without primary keys, and shows how to invoke them via \show, \watch or direct function calls.

ExtensionJavaScriptPython
0 likes · 8 min read
Creating Custom Extensions in MySQL Shell with JavaScript and Python
Java Backend Technology
Java Backend Technology
May 28, 2020 · Backend Development

How to Build a Low‑Intrusion Transactional Message System with Spring Boot and RabbitMQ

This article details a lightweight transactional message solution for microservices that stores pending messages in a local MySQL table, defers RabbitMQ publishing until after transaction commit, and includes compensation logic with exponential back‑off to ensure reliable asynchronous communication.

CompensationDistributed SystemsRabbitMQ
0 likes · 23 min read
How to Build a Low‑Intrusion Transactional Message System with Spring Boot and RabbitMQ
MaGe Linux Operations
MaGe Linux Operations
May 27, 2020 · Operations

Key DevOps Interview Q&A: Git, MySQL Replication, Kafka, Kubernetes

This article compiles essential DevOps interview questions covering version control differences between Git and SVN, MySQL master‑slave replication mechanics, Kafka versus traditional MQ, Kubernetes service types, pod communication, health checks, resource limits, link types, and permanent mounting techniques.

DevOpsGitKafka
0 likes · 17 min read
Key DevOps Interview Q&A: Git, MySQL Replication, Kafka, Kubernetes
Java Architect Essentials
Java Architect Essentials
May 25, 2020 · Databases

MySQL Sharding and Partitioning: Strategies, Tools, and Best Practices

This article explains MySQL performance bottlenecks, compares IO and CPU limits, introduces horizontal and vertical sharding and partitioning concepts, presents practical scenarios, outlines common tools such as Sharding‑Sphere, TDDL and Mycat, and provides step‑by‑step guidance for implementation, troubleshooting and scaling.

Vertical Partitioningdatabase partitioninghorizontal scaling
0 likes · 8 min read
MySQL Sharding and Partitioning: Strategies, Tools, and Best Practices
Ops Development Stories
Ops Development Stories
May 24, 2020 · Cloud Native

How to Deploy Rancher on K3s with Nginx, Keepalived, and MySQL

This guide walks through preparing the environment, installing required tools, configuring firewalls, setting up host files, deploying Nginx with Keepalived for high‑availability, installing Docker, MySQL, and finally installing K3s and Rancher using Helm, including certificate creation and troubleshooting steps.

DockerK3sKubernetes
0 likes · 16 min read
How to Deploy Rancher on K3s with Nginx, Keepalived, and MySQL
iQIYI Technical Product Team
iQIYI Technical Product Team
May 22, 2020 · Databases

Understanding MySQL Binlog, Redo Log, and Two‑Phase Commit for Event‑Driven Order Processing

The article explains how iQIYI’s order system leverages MySQL binlog and redo log with a two‑phase commit to drive event‑driven processing, reveals hidden consistency gaps where binlog events can precede database state, and proposes retry or direct binlog consumption strategies to ensure reliable order fulfillment.

BinlogEventDrivenRedoLog
0 likes · 15 min read
Understanding MySQL Binlog, Redo Log, and Two‑Phase Commit for Event‑Driven Order Processing
Laravel Tech Community
Laravel Tech Community
May 21, 2020 · Databases

When to Use Optimistic vs. Pessimistic Locks in MySQL (and Redis)

This article explains the concepts, advantages, and drawbacks of MySQL pessimistic and optimistic locks, shows how to implement each with SQL and PHP code, compares their suitability for different traffic patterns, and demonstrates a Redis‑based optimistic lock for high‑concurrency flash‑sale scenarios.

PHPconcurrencymysql
0 likes · 10 min read
When to Use Optimistic vs. Pessimistic Locks in MySQL (and Redis)
vivo Internet Technology
vivo Internet Technology
May 20, 2020 · Databases

Understanding MySQL Crash‑Safe Mechanism: WAL, Redo/Undo/Binlog, Two‑Phase and Group Commit, and Recovery Process

MySQL achieves crash‑safe durability by employing a write‑ahead log architecture that records changes in redo, undo, and binary logs, coordinates them through two‑phase and group commit to maintain order, and uses a structured recovery process to replay or roll back transactions after any failure.

BinlogCrash SafetyGroup Commit
0 likes · 17 min read
Understanding MySQL Crash‑Safe Mechanism: WAL, Redo/Undo/Binlog, Two‑Phase and Group Commit, and Recovery Process
Aikesheng Open Source Community
Aikesheng Open Source Community
May 18, 2020 · Databases

Understanding MySQL Group Replication Consistency Levels (group_replication_consistency)

This article explains the MySQL group_replication_consistency parameter, describes its five possible values, demonstrates the three most common consistency modes (EVENTUAL, BEFORE, AFTER) with practical multi‑node examples, and discusses their advantages, drawbacks, and impact on query latency and data integrity.

ConsistencyGroup ReplicationReplication
0 likes · 13 min read
Understanding MySQL Group Replication Consistency Levels (group_replication_consistency)
Laravel Tech Community
Laravel Tech Community
May 18, 2020 · Databases

How to Diagnose and Eliminate MySQL Master‑Slave Replication Lag

This article explains why MySQL master‑slave replication can suffer from latency, examines the root causes on both master and slave sides, and provides practical architectural, hardware, and configuration solutions—including semi‑sync and parallel replication—to improve data consistency and performance.

LatencyMaster‑SlaveReplication
0 likes · 11 min read
How to Diagnose and Eliminate MySQL Master‑Slave Replication Lag