MySQL技术文章
-
MySQL 直方图的 sampling-rate 可以说明生成统计信息时读取了多少数据。本文从 COLUMN_STATISTICS 读取采样比例,解释内存上限导致的页级采样,并给出调整预算、重新生成和结合估算偏差判断的方法。309 收藏 -
数据库 · MySQL | 2个月前 | MySQL · 执行计划 · 索引优化 · 数据库排查 · mysql 不可见索引 Invisible Index optimizer_switch 索引回归
MySQL 的不可见索引适合用来观察“去掉这条索引会怎样”,但它不是删除前的自动回滚按钮。本文以订单查询为例,演示设置不可见、用 optimizer_switch 做单会话影子验证、检查执行计划和恢复可见性的边界。308 收藏 -
从并列排序值、默认 frame 和显式边界入手,说明 MySQL window frame 中 ROWS 与 RANGE 的区别,并给出逐笔累计、按日期累计和范围统计的选择方法。308 收藏 -
MySQL 可用 REGEXP_REPLACE 将连续普通空格压缩为一个。本文以临时表构建清理示例,区分首尾空格、制表符、换行和 NULL,给出预览、事务试写、回滚及业务字段集成的注意事项。308 收藏 -
MySQL recursive CTE 的深度由递归终止条件和 cte_max_recursion_depth 共同约束。本文从递归层数错误出发,说明如何用 SESSION 级参数调整预算、保留业务终止条件,并用 max_execution_time 保护慢递归查询。308 收藏 -
MySQL 切换事务隔离级别后查询结果仍不变,通常是当前事务已经建立了快照,或切换只作用于下一事务。本文用两个会话说明 REPEATABLE READ、READ COMMITTED、自动提交和锁定读的边界。307 收藏 -
数据库 · MySQL | 3星期前 | MySQL · 数据库 · csv · 数据导入 · CSV导入 MySQL LOAD DATA LOAD DATA LOCAL INFILE MySQL批量导入
MySQL LOAD DATA 读取 CSV 时,关键不是只写一条 SQL,而是对齐文件位置、字符集、分隔符、引号、换行符和目标列。本文给出 LOCAL 与非 LOCAL 的选择、列映射、清洗和结果核对方法。307 收藏 -
MySQL InnoDB 中普通 SELECT、UPDATE、FOR SHARE 与 FOR UPDATE 使用的读视图不同。本文通过事务快照、当前版本和锁定动作,给出查询与并发修改的选择方法。306 收藏 -
MySQL 直方图默认采用手动更新模式。批量导入删除、数据倾斜迁移、执行计划估算明显偏离或迁移恢复后应优先评估更新;MySQL 8.4 可启用 AUTO UPDATE,但仍需理解触发边界。306 收藏 -
MySQL Version Tokens服务器列表描述节点状态,会话列表声明客户端期望。结合独立SQL示例说明包含匹配、set与edit、权限及连接池和路由处理的边界。306 收藏 -
MySQL Performance Schema 的按线程等待汇总表能把 THREAD_ID、等待事件和累计计时关联起来。本文给出采集项、线程映射、排序定位和清零窗口的最小 SQL,并说明后台线程、计时单位和空结果的排查边界。306 收藏 -
MySQL 字符串列完整建索引过宽时,可以用前缀索引缩小索引体积,但长度不能凭感觉填写。本文用区分度查询选择候选长度,再结合字符集、字节上限、SHOW INDEX、EXPLAIN 和 ORDER BY 边界完成验证。305 收藏 -
MySQL 复制延迟排查先区分 IO 接收线程和 SQL 应用线程,再结合读取位点、执行位点、relay log 积压及 Last_IO_Error、Last_SQL_Error 判断问题落点。304 收藏 -
MySQL 将索引设为 INVISIBLE 后,优化器默认不再使用它;如果 USE INDEX 或 FORCE INDEX 仍然点名该索引,查询会报错。本文给出确认状态、恢复可见和单次验证的处理边界。304 收藏 -
MySQL generated column 索引不是按数学等价判断的。本文用 f1 + 1、操作数顺序、结果类型和 JSON_UNQUOTE 说明匹配失败的原因,并给出 EXPLAIN 排查方法。304 收藏