MySQL技术文章
-
通过 InnoDB 范围 UPDATE 与并发 INSERT 的双事务场景,解释记录锁、间隙锁和 next-key 锁何时出现,并给出索引、隔离级别、锁等待观察与缩小锁范围的实用判断方法。313 收藏 -
从 SHOW ENGINE INNODB STATUS 读懂持锁与等待锁,定位 MySQL 事务交叉加锁的闭环,并给出访问顺序、索引和重试的处理方案。351 收藏 -
通过部门成绩同分示例比较 MySQL ROW_NUMBER 与 DENSE_RANK:前者适合每组固定取 N 行,后者适合保留前 N 个并列档位,并讲清稳定排序、CTE 外层筛选和 NULL 边界。112 收藏 -
用 MySQL WITH RECURSIVE 从邻接表生成组织树,讲清根节点参数、层级字段、路径排序、终止条件、深度上限与循环防护,并给出可直接改造的 SQL。127 收藏 -
MySQL JSON 列不能直接按普通方式建索引。本文用生成列提取 JSON 路径中的字符串和数值,再建立二级索引,并用 EXPLAIN 检查查询是否匹配。291 收藏 -
数据库 · MySQL | 15小时前 | MySQL · explain · sql优化 · 索引优化 · order by explain 范围查询 最左前缀 MySQL 联合索引 联合索引列顺序
联合索引列顺序不能只看区分度。本文用订单查询逐项判断等值前缀、首个范围列、排序方向与稳定分页,再结合 key_len、Using filesort 和 EXPLAIN ANALYZE 验证设计。500 收藏 -
用 MySQL EXPLAIN ANALYZE 拆解查询的迭代器耗时,结合 rows、actual time 和 loops 判断估算偏差、扫描放大与连接瓶颈,并给出安全的复测方法。169 收藏 -
MySQL JSON_OVERLAPS 可以配合 InnoDB 多值索引优化 JSON 数组相交查询,但必须匹配索引表达式、数组类型和查询路径,并用 EXPLAIN 确认优化器实际选用了索引。255 收藏 -
数据库 · MySQL | 23小时前 | MySQL · 数据库运维 · MySQL备份 MySQL Clone CLONE LOCAL DATA DIRECTORY 本地克隆 clone_status
本文演示如何用 MySQL Clone 插件把当前实例复制到同一服务器的新目录,涵盖插件检查、BACKUP_ADMIN、绝对路径规则、CLONE LOCAL DATA DIRECTORY、进度查询和外部表空间限制。285 收藏 -
MySQL 日期范围查询没有触发分区裁剪,通常与分区表达式不匹配、日期列被函数包裹、类型转换或范围过宽有关。本文用 SHOW CREATE TABLE、INFORMATION_SCHEMA.PARTITIONS 和 EXPLAIN 的 partitions 列定位原因,并给出半开区间改写方法。201 收藏 -
MySQL CHECK 失败后,先从错误中取得约束名,再用 SHOW CREATE TABLE 和 INFORMATION_SCHEMA.CHECK_CONSTRAINTS 反查表达式,最后把候选值拆成多个布尔子条件逐列计算。本文还说明 TRUE、FALSE、UNKNOWN、NULL 与隐式类型转换的差异。386 收藏 -
MySQL GTID 自动定位可让副本按已执行事务集向新源请求缺失事务。本文给出候选源核对、SOURCE_AUTO_POSITION 切换命令、状态验收和已清理 GTID 的处理边界。110 收藏 -
MySQL 生成列没有单独的刷新按钮:依赖列变化时,存储生成列和它的索引在行写入过程中维护,虚拟生成列则在读取时计算。本文用最小 SQL 区分两种时机,并排查事务可见性与执行计划未用索引的常见误判。201 收藏 -
MySQL EXPLAIN ANALYZE 中的 loops 表示迭代器实际执行次数。本文结合 rows、actual time 和嵌套循环 JOIN,说明如何读懂它并定位估算偏差。190 收藏 -
MySQL 的 JSON 标量提取结果未必天然适合作为函数索引键。本文说明 JSON_UNQUOTE 返回 LONGTEXT 时为什么需要 CAST,并给出字符串、数值、金额类型的索引与查询匹配写法。204 收藏