MySQL技术文章
-
用一组可复现的 MySQL 8.4 示例,讲清 INTERSECT 与 EXCEPT 的 DISTINCT/ALL、列数和类型边界,以及 NULL、优先级、ORDER BY 的验收方法。287 收藏 -
批量处理订单时,不必因为一条异常记录回滚整批事务。本文用 MySQL SAVEPOINT 设计局部回滚边界,配合错误记录、有限重试和最终提交检查,给出可复现的 SQL 与上线排查清单。170 收藏 -
MySQL Enterprise Audit 默认全量记录时,审计日志很快会被健康检查和后台账号淹没。本文用 audit_log_filter_set_filter 按事件、用户和查询统计字段收窄范围,并给出安装前提、赋值、回滚与验收方法。145 收藏 -
MySQL 8.4 存 IPv6 地址时,不建议把文本直接塞进 VARCHAR。本文用 INET6_ATON 和 INET6_NTOA 演示 VARBINARY(16) 存储、NULL 与非法输入边界、索引查询和应用层回显。356 收藏 -
从服务端默认值、数据库和表级覆盖,到连接握手后的四个 session 变量,给出一套可回滚的 MySQL 8.4 utf8mb4 迁移与验收流程,避免中文写入正常却排序、比较和结果返回异常。423 收藏 -
MySQL 8.4 用 ROW_NUMBER() 做分页时,排序键不完整会让边界页出现重复或漏行。本文从稳定排序、窗口函数和游标条件三处核对结果,并给出可回归的分页写法。338 收藏 -
数据库 · MySQL | 2个月前 | MySQL · 权限 · 性能排查 · mysql SHOW PROCESSLIST performance_schema.threads PROCESS权限 会话诊断
线上慢 SQL 需要先确认它属于哪个连接、卡在哪个阶段,再决定是否查看执行计划或终止会话。本文用 SHOW PROCESSLIST 与 performance_schema.threads 还原连接 ID、线程状态、权限边界和复核步骤。399 收藏 -
数据库 · MySQL | 2个月前 | MySQL · InnoDB · Purge Lag 长事务 InnoDB history list length information_schema.innodb_trx sys.innodb_lock_waits
InnoDB history list length 持续升高,通常不是单纯的写入变快,而是 purge 被长事务或历史读视图拖住。本文从监控现象出发,用 information_schema.innodb_trx、performance_schema 与 sys 视图定位阻塞源,再给出安全结束事务和复查回收速度的步骤。106 收藏 -
数据库 · MySQL | 2个月前 | MySQL · JSON · 数据库开发 · JSON_TABLE MySQL 8.4 JSON_TABLE NESTED PATH ON EMPTY ON ERROR JSON 数组展开
业务事件常被压在一列 JSON 数组里,直接用 JSON_EXTRACT 取值很快就会遇到多行展开、字段缺失和类型转换问题。本文用订单事件数组演示 MySQL 8.4 的 JSON_TABLE、FOR ORDINALITY、NESTED PATH 以及 ON EMPTY/ON ERROR 写法,并用行数与警告核对结果。390 收藏 -
数据库 · MySQL | 2个月前 | MySQL · InnoDB · 备份恢复 · mysqldump · innodb mysqldump 逻辑备份 MySQL 8.4 single-transaction
MySQL 8.4 的 InnoDB 逻辑备份不能只加一个 single-transaction 参数。本文用一致性快照、长事务、DDL 变更和恢复抽检建立可执行的备份验收流程。435 收藏 -
数据库 · MySQL | 2个月前 | MySQL · CPU · 数据库 · MySQL 8.4 MySQL资源组 RESOURCE_GROUP RESOURCE_GROUP_ADMIN CPU限流
MySQL 8.4 的资源组可以把线程或单条 SQL 放进指定 CPU 资源边界,适合给报表、后台批处理和在线请求做隔离。本文用 RESOURCE_GROUP 语句与 RESOURCE_GROUP 优化器提示演示创建、绑定、检查和回滚,并说明权限与线程范围的限制。191 收藏 -
数据库 · MySQL | 2个月前 | MySQL · 数据库 · 性能监控 · MySQL performance_schema events_statements_history_long DIGEST 异常 SQL 语句历史
MySQL 的 performance_schema 会把近期语句按事件记录下来,DIGEST 还能把字面量不同的同类 SQL 归并观察。本文用 events_statements_history_long 说明如何抓取异常语句、区分总耗时与单次耗时,并处理历史表为空、采样范围有限等问题。352 收藏 -
用最小 SQL 验证 MySQL READ ONLY 事务的真实边界:哪些普通表写入会失败,为什么临时表仍可修改,以及连接池复用时如何确认只读状态没有泄漏。335 收藏 -
MySQL 8.4 支持多个复制通道从不同源端汇聚到一个副本。本文从 channel 级状态、并行 worker、过滤边界和冲突风险出发,整理多源复制的配置与排查方法。300 收藏 -
把订单金额、状态和时间关系交给应用层校验,批处理或旁路写入仍可能留下脏数据。本文用 MySQL 8.4 CHECK 约束建立可落地的边界,演示新增约束前的存量检查、失败写入的错误定位、约束命名和回滚步骤,避免一次结构变更卡住发布。109 收藏