MySQL技术文章
-
MySQL 复制延迟应按通道区分接收、协调与工作线程。本文组织只读状态报告,给出错误与事务进度查询、线程关联写法,说明 Seconds_Behind_Source 的限制及分层处理方向。141 收藏 -
本文用会员与付费用户的查询示例说明 MySQL INTERSECT 如何取两组结果的交集,并解释默认去重、INTERSECT ALL、列结构和排序范围。358 收藏 -
MySQL 分区表出现跨分区扫描时,先检查 WHERE 是否直接约束分区键,再区分 RANGE、RANGE COLUMNS 与 KEY 分区的裁剪边界,最后用 EXPLAIN 的 partitions 字段确认查询范围。146 收藏 -
MySQL 混合字符串表达式的排序规则可用 CHARSET、COLLATION、COERCIBILITY 观察;数值越小优先级越高,显式 COLLATE 为 0。本文用原创 SQL 说明列、字面量、拼接和同优先级冲突的判断方法。361 收藏 -
MySQL JSON 数组对象可用 JSON_TABLE 展开后联合过滤。本文区分明细与订单返回粒度,说明路径、序号、缺字段、JSON null 与转换错误,并给出原创订单查询样例。467 收藏 -
MySQL 联合索引没有命中时,按最左前缀、等值与范围条件、表达式写法和 EXPLAIN 字段逐层判断,区分索引无法使用与优化器主动选择全表扫描。415 收藏 -
MySQL EXPLAIN 中的 rows 是优化器估算,不是实际返回行数。本文用 EXPLAIN ANALYZE、ANALYZE TABLE 和直方图定位偏差来源,并给出复测边界。437 收藏 -
本文用一个订单报表示例说明 MySQL CTE 如何按筛选、聚合和展示关联拆分复杂查询,并解释 EXPLAIN、合并与物化之间的关系。413 收藏 -
MySQL JSON_TABLE 使用 NESTED PATH 展开空数组时,父级记录仍可能保留一行,嵌套列显示为 NULL。本文解释补位行的来源,并用 EXISTS PATH、外层 WHERE 和 ON EMPTY 区分真实明细、空数组与字段缺失。437 收藏 -
JSON_SET 并不自动等于原地部分更新。本文从同列读写、已有路径、空间条件和观测函数四个角度,说明 MySQL JSON 更新何时能复用存储空间,以及哪些写法会退回整值重写。132 收藏 -
MySQL 存储程序可用裸 RESIGNAL 保留原始条件,用 GET STACKED DIAGNOSTICS 读取原始诊断。本文通过受控异常比较状态、错误号与消息,说明定向改写、额外语句、日志失败和事务归属的边界。280 收藏 -
数据库 · MySQL | 1星期前 | MySQL · InnoDB · 数据库运维 · mysql Threads 锁等待 data_locks performance_schema data_lock_waits INNODB_TRX 阻塞事务
MySQL 锁等待排查应先看 performance_schema.data_lock_waits,再连接 data_locks、innodb_trx 和 threads,区分等待事务、阻塞事务、锁资源与会话信息。本文给出查询路径,并说明空闲阻塞和现场快照的边界。458 收藏 -
MySQL SIGNAL 可以在存储程序中主动返回自定义异常。本文从 SQLSTATE、MESSAGE_TEXT、MYSQL_ERRNO 和 DECLARE CONDITION 入手,给出稳定的错误契约写法,并区分 SIGNAL、handler 与 RESIGNAL 的边界。132 收藏 -
MySQL 连接顺序提示应按局部次序、前缀、后缀和全块固定选择。本文对比四种写法,给出别名与查询块示例,说明 EXPLAIN 观察方法以及 const 表、外连接和冲突提示的限制。403 收藏 -
数据库 · MySQL | 1星期前 | MySQL · 事务 · 故障排查 · mysql transaction_read_only INNODB_TRX START TRANSACTION SET TRANSACTION
MySQL 判断当前连接能否写入,不能只看一个只读值;要分开检查 transaction_read_only 的全局、会话与下一事务作用域,再结合事务启动方式和服务器只读开关判断。102 收藏