MySQL技术文章
-
MySQL 查询明明给条件列建了索引,却因为字符串列与数字参数发生隐式类型转换而扫描变慢。本文用可复现实验说明转换发生在哪里、如何用 EXPLAIN 判断影响,并给出参数类型与字段设计的修复边界。303 收藏 -
用 MySQL 资源组把批处理线程绑定到指定 VCPU,并结合线程优先级、会话指派和平台限制做可靠的 CPU 资源隔离。303 收藏 -
MySQL 使用 LAG 比较相邻记录时,分组首行没有上一条记录,默认返回 NULL。本文说明如何固定窗口顺序、使用 default,并区分真实 NULL 与首行缺失。303 收藏 -
解释 MySQL BIN_TO_UUID 与 UUID_TO_BIN 的 swap_flag 配对关系,使用固定 UUID 说明交换布局、错配现象、BINARY(16) 写入查询和历史数据边界。303 收藏 -
MySQL 字符串排序异常,通常不是 ORDER BY 失效,而是列、连接或表达式使用的校对规则不同。本文用 utf8mb4 校对规则、大小写敏感和 COLLATE 覆盖,给出可复现的排查与修正方法。302 收藏 -
MySQL 时间范围查询能否命中分区,关键不在分区数量,而在分区键、边界定义和 WHERE 谓词是否保持可裁剪形式。本文用 RANGE COLUMNS、半开区间与 EXPLAIN PARTITIONS 说明具体做法。301 收藏 -
MySQL 的 CURRENT 诊断区表示处理器当前状态,STACKED 诊断区保留进入 handler 前的原始条件。本文用静态 SQL 示例说明两者的栈关系、读取时机与常见边界。301 收藏 -
MySQL 8.4 支持多个复制通道从不同源端汇聚到一个副本。本文从 channel 级状态、并行 worker、过滤边界和冲突风险出发,整理多源复制的配置与排查方法。300 收藏 -
MySQL 生成列索引不生效,通常不是索引语法错,而是查询表达式没有与生成列定义完全匹配。本文按表达式、结果类型、JSON_UNQUOTE 和 EXPLAIN 四个方向排查。300 收藏 -
MySQL invisible index 可以在不删除索引的情况下观察优化器计划变化。本文用 IS_VISIBLE、EXPLAIN、ALTER INDEX 和 SET_VAR 说明如何安全评估索引下线影响。300 收藏 -
数据库 · MySQL | 2星期前 | MySQL · mysql 密码策略 密码强度 VALIDATE_PASSWORD_STRENGTH validate_password ALTER USER
说明 VALIDATE_PASSWORD_STRENGTH 如何返回候选密码的 0 到 100 分值,并区分组件状态、LOW/MEDIUM/STRONG 策略与账户变更时的最终校验边界。300 收藏 -
MySQL 底层列改为 INVISIBLE 后,旧视图仍可保留原列引用。通过独立 SQL 示例区分基表属性与视图接口,说明元数据排查、显式列名迁移和回退方式。300 收藏 -
MySQL 8.0 及以上可以先把二级索引设为不可见,让优化器停止使用它却继续维护索引。本文用订单查询演示 SHOW INDEX、ALTER INDEX INVISIBLE、EXPLAIN 和回滚检查,说明什么证据足够支持 DROP INDEX。299 收藏 -
MySQL 8.4 可以用 EXPLAIN FORMAT=JSON INTO 将 JSON 执行计划保存到当前会话变量,再用 JSON_EXTRACT 读取表名、访问类型、索引和估算字段;需要跨会话比较时再写入 JSON 列留档。299 收藏 -
MySQL 9.4 将 MD5() 和 SHA1() 标记为弃用,但旧 SQL 的迁移不能一概改成 SHA2()。本文按校验、业务指纹和口令存储区分用途,给出扫描、替换、长度核对与回归检查清单。298 收藏