MySQL技术文章
-
两张结构一致的订单表合并查询时,UNION ALL 与 UNION 的差别不只是有没有重复数据,还会影响去重、临时表和排序路径。本文用可复现实验拆开两者的边界,并给出选择与验收方法。395 收藏 -
MySQL 8.4 开启 sql_generate_invisible_primary_key 后,InnoDB 无主键表可能出现不可见的 my_row_id。本文用 SHOW CREATE TABLE、SHOW INDEX 和信息架构查询确认真实表结构,并说明复制与备份边界。206 收藏 -
数据库 · MySQL | 6小时前 | MySQL · InnoDB · 数据库备份 · 运维实践 · mysql innodb mysqldump 逻辑备份 --single-transaction
用一个可复查的导出命令讲清 mysqldump --single-transaction 的一致性边界:InnoDB 为什么能在不锁表的情况下读取同一快照,MyISAM 与 DDL 操作又会带来哪些风险。273 收藏 -
REPLACE INTO 遇到主键或唯一键冲突时,不是原地更新,而是先删除旧行再插入新行。本文用订单同步场景拆开执行语义、AUTO_INCREMENT、外键级联和更稳妥的替代写法。109 收藏 -
批量接口遇到网络重试时,幂等键不能只停留在请求参数里。本文用批量导入订单场景说明请求级幂等、业务唯一约束和重复响应如何配合,并给出可核对的事务边界。390 收藏 -
订单清理任务执行 DELETE 时,真正拖慢速度的可能不是主表扫描,而是子表外键检查、级联删除和长事务锁范围。本文用订单与明细表的场景拆开执行路径,给出索引核对、分批删除和安全验收方法。262 收藏 -
MySQL 分组取每组第一条时,先用 ROW_NUMBER 按业务字段排序,再用唯一键补足平手顺序,外层筛选 rn=1。本文用订单状态变更记录说明并列值、NULL、索引与执行计划的核对方法。437 收藏 -
删除父表记录时突然变慢,先别急着改事务隔离级别。本文从锁等待、子表外键索引和级联删除三个现场信号入手,给出可复现的检查 SQL、修复顺序与回滚边界。458 收藏 -
MySQL 开启 ONLY_FULL_GROUP_BY 后,ANY_VALUE 可以解决哪些非聚合列报错?本文用订单分组示例说明它的语义、风险边界和核对方法。371 收藏 -
用 MySQL EVENT 做定时清理时,真正容易漏掉的是全局启用状态、会话时区和执行记录。本文用一张清理任务表说明如何配置、验证、留痕与安全停用。132 收藏 -
MySQL 隐形索引适合用来验证一个索引是否仍被优化器需要。本文以订单查询为例,演示如何将索引设为不可见、用 EXPLAIN 对比计划、观察线上指标,并在结果不理想时快速恢复。278 收藏 -
批量更新从几百行扩大到几十万行后,慢点往往不在 UPDATE 语句本身,而在索引维护、锁持有时间和事务日志压力。本文用订单归档场景拆开原因,并给出按主键分批提交的验收边界。291 收藏 -
数据库 · MySQL | 22小时前 | MySQL · SQL排查 · 聚合函数 · 数据库验证 · mysql group_concat group_concat_max_len 聚合字符串 结果截断
报表把一组订单号拼成一列时,GROUP_CONCAT 可能悄悄只返回前 1024 字节。本文从默认上限、会话级调整、字符数与字节数验收几处说明截断原因,并给出不把参数盲目调大的检查方法。353 收藏 -
解释 MySQL 8.4 全局变量与连接会话变量的初始化关系,使用会话状态跟踪观察赋值变化,并给出连接池复用旧会话变量时的核对、修复与回归方法。245 收藏 -
MySQL 事件已经创建却没有按时执行,通常要分开核对全局调度器、事件自身状态、创建时区和 DEFINER 权限。本文用一个可复查的小项目演示排查顺序,并补上重复触发与错误日志边界。452 收藏