MariaDB 10.2升级至10.6后长查询无法终止连接堆积故障
MariaDB 10.2升级至10.6 LTS版本后查询阻塞故障说明
- 故障触发背景:RDS数据库实例从MariaDB 10.2升级至10.6(LTS版本)后,出现查询阻塞异常:长时间运行的查询会锁定数据表,进而引发连锁反应,导致后续大量查询被阻塞。
- 故障表现1:即便修改
connect_timeout等默认系统变量,这类异常查询仍不会自动停止运行,相关现象截图:
- 故障表现2:查询运行时长达到7200s时会被数据库自动标记为KILLED状态,但执行
show full processlist;命令仍能查询到这些查询记录;手动执行KILL命令终止查询同样无效,仅查询状态会变为KILLED,对应连接始终保持打开状态,相关现象截图:
- 故障影响:残留连接会导致数据库连接数持续上涨,当打开连接数达到800时,数据库有时会直接停止响应。
- 现有临时处置方案:目前唯一的临时处理方式是重启数据库,但单次数据库重启需耗时15分钟,无法通过频繁重启的方式常态化清理异常残留连接。
已采集的排查参考数据
以下为show global status;命令的输出结果:
- 数据库重启前(存在大量阻塞的打开连接时)的状态参数值:重启前状态参数记录
- 数据库重启后、服务运行稳定状态下的状态参数值:重启后稳定状态参数记录
请结合以上故障现象与状态参数,排查故障根因并给出永久解决方案。
内容的提问来源于stack exchange,提问作者Hosni Mansour
相关产品推荐
相关产品推荐

