MySQL技术文章
-
使用 MySQL ROW_NUMBER() 按业务键分组、按更新时间倒序取每组最新记录,并处理并列时间、NULL 和索引等常见边界。312 收藏 -
MySQL 连接池空闲连接被 wait_timeout 或中间网络设备断开后,不要只靠重试。本文从服务端超时、连接池回收、PingContext 和事务安全四个层面给出恢复方案。311 收藏 -
MySQL 切换事务隔离级别后查询结果仍不变,通常是当前事务已经建立了快照,或切换只作用于下一事务。本文用两个会话说明 REPEATABLE READ、READ COMMITTED、自动提交和锁定读的边界。307 收藏 -
MySQL InnoDB 中普通 SELECT、UPDATE、FOR SHARE 与 FOR UPDATE 使用的读视图不同。本文通过事务快照、当前版本和锁定动作,给出查询与并发修改的选择方法。306 收藏 -
MySQL 直方图默认采用手动更新模式。批量导入删除、数据倾斜迁移、执行计划估算明显偏离或迁移恢复后应优先评估更新;MySQL 8.4 可启用 AUTO UPDATE,但仍需理解触发边界。306 收藏 -
用 MySQL 资源组把批处理线程绑定到指定 VCPU,并结合线程优先级、会话指派和平台限制做可靠的 CPU 资源隔离。303 收藏 -
MySQL 时间范围查询能否命中分区,关键不在分区数量,而在分区键、边界定义和 WHERE 谓词是否保持可裁剪形式。本文用 RANGE COLUMNS、半开区间与 EXPLAIN PARTITIONS 说明具体做法。301 收藏 -
MySQL JSON 列不能直接按普通方式建索引。本文用生成列提取 JSON 路径中的字符串和数值,再建立二级索引,并用 EXPLAIN 检查查询是否匹配。291 收藏 -
MySQL 生成列索引同时受字符串比较规则和表达式匹配条件影响。本文用 JSON 字符串生成列说明如何固定字符集与排序规则,并通过 CHARSET、COLLATION 和 EXPLAIN 定位索引不命中。287 收藏 -
MySQL 生成列索引未命中表达式查询时,重点检查生成列定义、表达式结构、结果类型、JSON_UNQUOTE 和 EXPLAIN 计划,区分匹配失败与成本选择。286 收藏 -
数据库 · MySQL | 4天前 | MySQL · 数据库运维 · MySQL备份 MySQL Clone CLONE LOCAL DATA DIRECTORY 本地克隆 clone_status
本文演示如何用 MySQL Clone 插件把当前实例复制到同一服务器的新目录,涵盖插件检查、BACKUP_ADMIN、绝对路径规则、CLONE LOCAL DATA DIRECTORY、进度查询和外部表空间限制。285 收藏 -
用 performance_schema.events_statements_summary_by_digest 按语句模式聚合慢 SQL,区分总耗时、平均耗时、扫描量与 digest 容量边界。284 收藏 -
通过会话级 optimizer_switch 对比 use_invisible_indexes 开关,验证不可见索引是否进入 MySQL 查询计划,并给出恢复设置与上线判断边界。283 收藏 -
旧表字符集迁移不能只改一个默认值。本文以 utf8mb4 为目标,说明如何盘点表列与连接设置、选择排序规则、执行 ALTER TABLE、处理显式列定义并安排迁移后的核对与回滚。281 收藏 -
MySQL 递归 CTE 需要同时防止层级过深与父子路径成环。本文给出携带 depth 和分隔 path 的安全查询模板,并补充递归上限、查询超时、终止查询、回滚和复盘清单。275 收藏