MySQL技术文章
-
数据库 · MySQL | 1个月前 | MySQL · 执行计划 · 统计信息 · sql优化 · 数据库排查 · 查询优化 MySQL 8.4 直方图统计 ANALYZE TABLE COLUMN_STATISTICS
MySQL 查询明明有索引,优化器却把结果行数估得很离谱时,问题可能在列值分布而不是索引定义。本文用订单状态分布不均的场景,演示 MySQL 8.4 直方图的生成、读取、采样率核对与安全删除,说明它适合修正什么判断,以及哪些列不能生成直方图。353 收藏 -
报表把一组订单号拼成一列时,GROUP_CONCAT 可能悄悄只返回前 1024 字节。本文从默认上限、会话级调整、字符数与字节数验收几处说明截断原因,并给出不把参数盲目调大的检查方法。353 收藏 -
数据库 · MySQL | 1个月前 | MySQL · 数据库 · 性能监控 · MySQL performance_schema events_statements_history_long DIGEST 异常 SQL 语句历史
MySQL 的 performance_schema 会把近期语句按事件记录下来,DIGEST 还能把字面量不同的同类 SQL 归并观察。本文用 events_statements_history_long 说明如何抓取异常语句、区分总耗时与单次耗时,并处理历史表为空、采样范围有限等问题。352 收藏 -
讲清 MySQL LOAD DATA 导入 TSV 文件时 FIELDS TERMINATED BY、FIELDS ESCAPED BY、LINES TERMINATED BY 与 \N NULL 标记的对应关系,并给出列顺序、CRLF、字符集和 LOCAL 排障方法。352 收藏 -
MySQL CTE 会在什么情况下物化而不是合并?本文从查询结构、递归 CTE、61 张基表边界和 EXPLAIN 计划出发,说明 MERGE、NO_MERGE 与 derived_merge 的判断方法。352 收藏 -
订单列表把渠道、会员等级放进 JSON 后,筛选条件容易变成逐行计算。本文用 MySQL 生成列和索引把 JSON 路径变成可核对的查询字段,同时处理缺失键、空字符串、类型转换和写入成本。351 收藏 -
数据库 · MySQL | 1个月前 | MySQL · 执行计划 · 统计信息 · sql优化 · 数据库排查 · 查询优化 MySQL 8.4 直方图统计 ANALYZE TABLE COLUMN_STATISTICS
MySQL 查询明明有索引,优化器却把结果行数估得很离谱时,问题可能在列值分布而不是索引定义。本文用订单状态分布不均的场景,演示 MySQL 8.4 直方图的生成、读取、采样率核对与安全删除,说明它适合修正什么判断,以及哪些列不能生成直方图。350 收藏 -
MySQL 8.4 RESOURCE GROUP 可以把后台批处理会话放入独立资源组,通过 VCPU、THREAD_PRIORITY 和 SET RESOURCE GROUP 限制其对前台查询的影响。本文用一个可回滚的示例说明创建、绑定、核验与平台边界。349 收藏 -
用 MySQL 8.4 的 JSON_SCHEMA_VALID() 把 JSON Schema 放进 CHECK 约束,再用 JSON_SCHEMA_VALIDATION_REPORT() 和 SHOW WARNINGS 定位字段缺失、类型错误与范围越界。345 收藏 -
把连接字符集改成 utf8mb4 不会自动改变表和索引,但列字符集迁移可能让索引前缀的字节数重新触及 InnoDB 上限。本文给出区分连接设置、核算前缀和安全迁移的检查方法。344 收藏 -
MySQL 直方图适合修正倾斜列的选择性估算。本文从基线、建直方图、检查采样、对比 EXPLAIN 到刷新和回滚,给出一套可操作的排查手册。341 收藏 -
用 MySQL LOAD DATA 导入 CSV 时出现列错位,通常不是表结构突然变化,而是字段分隔符、引号规则或 Windows 行尾与实际文件不一致。本文用可复现的订单导入例子定位并修正。339 收藏 -
从 INSTANT、INPLACE、COPY 和 LOCK 四个维度,判断 MySQL ALTER TABLE 是否会重建数据,并给出克隆表试跑和上线检查清单。339 收藏 -
MySQL 8.4 用 ROW_NUMBER() 做分页时,排序键不完整会让边界页出现重复或漏行。本文从稳定排序、窗口函数和游标条件三处核对结果,并给出可回归的分页写法。338 收藏 -
MySQL 递归 CTE 不退出或结果越界时,检查递归成员的 WHERE 条件,再用递归深度、执行时间和 LIMIT 做安全保护。338 收藏