MySQL技术文章
-
数据库 · MySQL | 3星期前 | MySQL · 数据类型 · JSON · MySQL MEMBER OF MySQL JSON 数组成员判断 MEMBER OF 类型不匹配 JSON 数字字符串区别 MySQL JSON 查询
MySQL MEMBER OF 判断 JSON 数组成员时,数字、字符串和 JSON 对象不是同一种值。本文用最小样例说明类型不匹配的原因,并给出按数据域修正查询值、处理 NULL 与核对结果的办法。167 收藏 -
从 SHOW ENGINE INNODB STATUS、innodb_print_all_deadlocks 和 Performance Schema 的锁表与历史语句中,定位 MySQL 事务死锁对应的具体 SQL。167 收藏 -
MySQL 查询 JSON 数组成员时,可以用 InnoDB 多值索引把数组元素展开为可检索的索引记录。本文从查询写法、CAST ARRAY 建索引、EXPLAIN 验证和空值边界四个方面说明落地方法。164 收藏 -
MySQL 批量写入没有通用的最佳事务行数。本文用固定数据集对比 100 到 10000 行事务,采集吞吐、批次与提交延迟、redo 增量,并注入失败测量回滚时间,最终按业务门槛选出兼顾吞吐与恢复成本的最小事务。160 收藏 -
MySQL Invisible Index 不需要先删索引就能做灰度验证。本文从索引状态、默认优化计划、会话级 use_invisible_indexes 和性能证据四个方面说明配置、对照与回滚方法。156 收藏 -
MySQL 8.x 可通过 innodb_redo_log_capacity 在线调整 redo 总容量。本文说明如何按高峰写入速率估算容量,区分配置值、已生效容量与物理占用,并用 resize、LSN 和逻辑大小状态判断调整是否完成。153 收藏 -
用 GTID 集合、复制线程和写保护检查 MySQL 主从切换条件,说明候选副本提升、旧主库回挂以及新写入后的安全回退边界。153 收藏 -
MySQL 覆盖索引通过让过滤、排序和结果列落在同一索引中,减少回到聚簇数据页读取整行的机会。本文以订单列表为例,讲解投影收窄、联合索引设计、EXPLAIN 验收及写入成本控制。148 收藏 -
MySQL Histogram 统计信息不会随每次数据变更自动持续更新,过期后可能让优化器误判过滤率、rows 和访问路径。本文用 COLUMN_STATISTICS、EXPLAIN 与 ANALYZE TABLE 给出判断、重建和回滚边界。145 收藏 -
MySQL LOAD DATA 导入含真实换行的 CSV 或分隔文本时,关键是同时对齐字段分隔符、字段包围符、转义符和行终止符。本文用多行文本示例说明 OPTIONALLY ENCLOSED BY 的边界、引号处理方式以及安全导入步骤。140 收藏 -
MySQL Clone 恢复后不需要重新猜复制起点。本文说明如何从 performance_schema.clone_status 读取一致性 GTID 或文件位点,分别衔接复制通道,并处理配置未克隆、日志已清理和多线程中继日志恢复失败等问题。139 收藏 -
MySQL JSON_TABLE 展开多层数组的关键,是让每个 NESTED PATH 相对父级行源继续匹配,并把父级标量列定义在对应 COLUMNS 作用域中。本文用订单、商品、批次三级 JSON 给出完整 SQL,解释父级字段重复、序号列、空数组补 NULL 与兄弟子句非笛卡尔积等边界。137 收藏 -
数据库 · MySQL | 22小时前 | MySQL · 执行计划 · 查询优化 MySQL optimizer_trace 连接顺序 considered_execution_plans plan_prefix
EXPLAIN 只显示最终连接顺序,optimizer_trace 则能保留候选前缀、访问路径、累计成本与剪枝原因。本文说明如何读取 considered_execution_plans、plan_prefix、best_access_path 和 chosen,并用统计信息复查优化器判断。137 收藏 -
MySQL 分区表查询没走分区裁剪时,先看分区表达式,再用 EXPLAIN 的 partitions 列确认扫描范围,最后把过滤条件改成可被优化器推导的分区键等值或范围。134 收藏 -
数据库 · MySQL | 3星期前 | MySQL · JSON_CONTAINS MySQL JSON_OVERLAPS JSON 数组相交 MySQL JSON 类型比较 MySQL NULL 边界
MySQL JSON_OVERLAPS 判断 JSON 数组交集时,只需共享一个完整元素即可返回 1,但嵌套数组、对象、数字字符串类型以及 JSON null 和 SQL NULL 都有不同边界。130 收藏