MySQL技术文章
-
MySQL 使用 REGEXP_SUBSTR 匹配带前缀文本时,返回的是完整命中而不是括号捕获组。本文解释返回边界,并用 REGEXP_REPLACE 回溯引用提取目标字段。199 收藏 -
用 MySQL EXPLAIN ANALYZE 结合 actual time、rows、loops 与 Using temporary、Using filesort,定位临时表和排序的真实开销,再决定改 SQL 还是改索引。196 收藏 -
MySQL 直方图用于补充非均匀分布列的选择性估计。本文用 ANALYZE TABLE 配置桶数,从 COLUMN_STATISTICS 检查采样与更新时间,再用 EXPLAIN 对照实际行数并给出安全回退方法。195 收藏 -
MySQL 递归 CTE 的安全做法不是盲目调大上限,而是先写清终止条件,再按单次查询设置 cte_max_recursion_depth,并用执行时间、行数和结果边界复查。191 收藏 -
MySQL EXPLAIN ANALYZE 中的 loops 表示迭代器实际执行次数。本文结合 rows、actual time 和嵌套循环 JOIN,说明如何读懂它并定位估算偏差。190 收藏 -
MySQL 按分组取每组最新记录时,先用 ROW_NUMBER() 在 PARTITION BY 分组内按时间倒序编号,再由外层筛选 rn=1。本文说明稳定排序、并列时间、分组粒度、过滤边界和索引复核方法。185 收藏 -
通过一个最小副本初始化项目说明 MySQL Clone 插件如何传输 InnoDB 物理快照、复制坐标和元数据,并讲清权限、兼容条件、覆盖重启边界及 GTID 追平方法。184 收藏 -
用一个订单、商品和批次的 JSON 示例,说明 MySQL JSON_TABLE 的 NESTED PATH 相对路径、空数组补 NULL、类型处理和重复行排查方法。181 收藏 -
用 MySQL 8.4 EXPLAIN ANALYZE 对齐 rows、actual rows 和 loops,判断估算偏差、统计信息与慢查询热点。181 收藏 -
用重复排序值与数值间隔两个小实验,说明 MySQL 窗口函数中 ROWS 按行位置、RANGE 按排序值范围取框架,以及默认边界的常见误区。178 收藏 -
演示如何在不直接删除索引的情况下,把 MySQL 候选索引设为不可见,对比 EXPLAIN 与工作负载变化,并用单条查询临时恢复候选资格完成反向验证。175 收藏 -
MySQL JSON 列不能直接建立普通索引时,可用生成列提取稳定标量再建索引,并通过 EXPLAIN 排查路径、类型和命中问题。172 收藏 -
MySQL 的 REGEXP_LIKE 匹配中文时,结果可能受到表达式、模式、列定义和连接排序规则影响。本文给出 utf8mb4 显式配置、分层排查 SQL 与回归样例。169 收藏 -
用 MySQL EXPLAIN ANALYZE 拆解查询的迭代器耗时,结合 rows、actual time 和 loops 判断估算偏差、扫描放大与连接瓶颈,并给出安全的复测方法。169 收藏 -
MySQL 分区裁剪失效,常见原因不是分区本身无效,而是 WHERE 条件没有暴露可识别的分区表达式。本文从函数包裹、隐式转换和 OR 条件三个边界出发,给出按分区键改写查询的方法,并说明 EXPLAIN PARTITIONS 能确认什么。169 收藏