MySQL技术文章
-
MySQL CTE 会在什么情况下物化而不是合并?本文从查询结构、递归 CTE、61 张基表边界和 EXPLAIN 计划出发,说明 MERGE、NO_MERGE 与 derived_merge 的判断方法。352 收藏 -
从 SHOW ENGINE INNODB STATUS 读懂持锁与等待锁,定位 MySQL 事务交叉加锁的闭环,并给出访问顺序、索引和重试的处理方案。351 收藏 -
utf8mb4 排序规则不只是影响 ORDER BY,还会决定字符串比较、查询命中和 UNIQUE 索引是否判重。本文从大小写、重音、尾随空格三个维度,给出 MySQL 8.4 下的选择方法与迁移检查清单。337 收藏 -
MySQL 显式指定 ALGORITHM=INSTANT 时不支持就会报错,不会自动回退。本文给出按操作类型、表属性、并发与空间风险判断 INPLACE 或 COPY 的生产变更方法。333 收藏 -
通过 InnoDB 范围 UPDATE 与并发 INSERT 的双事务场景,解释记录锁、间隙锁和 next-key 锁何时出现,并给出索引、隔离级别、锁等待观察与缩小锁范围的实用判断方法。313 收藏 -
MySQL 直方图默认采用手动更新模式。批量导入删除、数据倾斜迁移、执行计划估算明显偏离或迁移恢复后应优先评估更新;MySQL 8.4 可启用 AUTO UPDATE,但仍需理解触发边界。306 收藏 -
MySQL JSON 列不能直接按普通方式建索引。本文用生成列提取 JSON 路径中的字符串和数值,再建立二级索引,并用 EXPLAIN 检查查询是否匹配。291 收藏 -
数据库 · MySQL | 2天前 | MySQL · 数据库运维 · MySQL备份 MySQL Clone CLONE LOCAL DATA DIRECTORY 本地克隆 clone_status
本文演示如何用 MySQL Clone 插件把当前实例复制到同一服务器的新目录,涵盖插件检查、BACKUP_ADMIN、绝对路径规则、CLONE LOCAL DATA DIRECTORY、进度查询和外部表空间限制。285 收藏 -
通过会话级 optimizer_switch 对比 use_invisible_indexes 开关,验证不可见索引是否进入 MySQL 查询计划,并给出恢复设置与上线判断边界。283 收藏 -
MySQL JSON_OVERLAPS 可以配合 InnoDB 多值索引优化 JSON 数组相交查询,但必须匹配索引表达式、数组类型和查询路径,并用 EXPLAIN 确认优化器实际选用了索引。255 收藏 -
数据库 · MySQL | 3天前 | MySQL · 事务 · InnoDB · 锁定读 MySQL NOWAIT FOR UPDATE NOWAIT FOR SHARE NOWAIT InnoDB行锁 ERROR 3572
MySQL 锁定读默认会等待冲突行锁,追加 NOWAIT 后可立即返回 3572 错误。本文用双连接示例说明 FOR UPDATE NOWAIT 的写法、事务回滚、错误处理,以及它与默认等待和 SKIP LOCKED 的边界。253 收藏 -
用一组混合 JSON 数据拆开 JSON_TABLE 的缺失路径、类型转换、默认值与报错边界,给出可直接改写的 SQL 配置方法。251 收藏 -
MySQL DDL 出现 Waiting for table metadata lock 时,可用 sys.schema_table_lock_waits 与 performance_schema.metadata_locks 找到等待和阻塞会话,再核对事务后安全处理。228 收藏 -
针对日期分区查询中 DATE、YEAR 等函数包裹分区键的场景,给出半开区间改写、EXPLAIN 验证、时区边界与不适用条件。224 收藏 -
MySQL 在线备份恢复演练不能只看命令返回成功,还要在隔离实例中核对行数、主键范围、业务聚合值、触发器和存储程序,形成可复盘的恢复证据。222 收藏