MySQL技术文章
-
说明MySQL NDB节点组、分区和数据副本的对应关系,用四节点假设布局区分同组冗余与跨组分布,提供只读SHOW命令,并解释为什么不能仅凭存活节点数判断数据覆盖。464 收藏 -
MySQL NDB事件订阅和普通SQL查询都能访问NDB数据,但职责完全不同:SQL主动读取当前快照,NDB API事件订阅等待数据变化。本文对比触发方式、结果形态、调用关系、ndbinfo观察入口、恢复重建和SQL补数边界,给出按任务选型的清单。457 收藏 -
MySQL 导入备份遇到 GTID_PURGED 冲突时,先比较备份 GTID 集与目标端 gtid_executed、gtid_purged、gtid_owned,再按新副本、已有实例或多份局部备份选择保留、注释或省略 GTID 元数据。455 收藏 -
MySQL CHECK 写入非法值没报错,通常与 NOT ENFORCED、INSERT IGNORE 或 NULL 导致的 UNKNOWN 有关。本文用建表定义、警告和信息架构查询逐层排查。452 收藏 -
用 MySQL JSON_SCHEMA_VALID 配合 CHECK 约束,在 JSON 入库前拒绝缺字段、类型不符和数值越界,并用验证报告定位具体失败位置。446 收藏 -
用 MySQL JSON_TABLE 展开订单 JSON 数组时,通过 DEFAULT ON EMPTY 为缺失字段提供类型正确的默认值,并结合 EXISTS PATH、FOR ORDINALITY 和 ON ERROR 保留可追溯的映射边界。445 收藏 -
讲解 MySQL 列直方图随数据分布变化失真后如何检查 COLUMN_STATISTICS,并用 ANALYZE TABLE UPDATE HISTOGRAM 重新采样,兼顾桶数、MySQL 8.4 自动更新和 EXPLAIN 验收。441 收藏 -
开启 ONLY_FULL_GROUP_BY 后,查询中的非聚合列必须出现在 GROUP BY 中,或能由分组列唯一确定。本文用主键、唯一键、单值过滤、ANY_VALUE 和派生表几个场景,说明如何改写查询并保持结果语义明确。440 收藏 -
MySQL NDB 原生备份由数据、事务日志与控制文件组成。本文限定 NDB 8.4,区分三类材料的职责、节点范围及归档交接误区,并给出只读清单示例与恢复准备建议。435 收藏 -
用普通 EXPLAIN 找到 Using filesort 与 Using temporary 线索,再用 EXPLAIN ANALYZE 对照实际行数、耗时和 loops,判断排序临时表是否真的是慢点。434 收藏 -
MySQL NDB 增加数据节点并创建新 node group 后,已有表不会自动把数据迁移到新节点。本文限定 NDB 8.4,说明重分布的原因、存量表与新表的差异、最小 ALTER TABLE 写法以及 MAX_ROWS 和空间回收边界。433 收藏 -
判断 MySQL 列选择性是否真的变差,不能只看直方图;应结合实际过滤比例、EXPLAIN ANALYZE 的估算与实际行数,以及索引 CARDINALITY 和统计更新时间综合确认。432 收藏 -
通过显式字段映射、用户变量和 IGNORE 处理 MySQL LOAD DATA 的脏行,并立即保存 Records、Skipped、Warnings 与 SHOW WARNINGS 明细。432 收藏 -
讲清 MySQL EXISTS、IN、NOT IN 遇到 NULL 时的三值逻辑差异,并给出 IS NOT NULL 与 NOT EXISTS 的安全写法。425 收藏 -
MySQL 8.4 可以在关闭时保存 Buffer Pool 中最近使用页的表空间与页编号,并在下次启动后由后台线程重新加载。本文给出配置、手动触发、进度检查和常见失效排查方法。425 收藏