MariaDB 10.3 Galera 集群“主”节点上的 Innodb_row_lock_time 呈指数增长

MariaDB 10.3 Galera 集群“主”节点上的 Innodb_row_lock_time 呈指数增长

我一直在尝试调查应用程序失败的问题,我有理由相信罪魁祸首位于数据库后端的某个地方。为此,我开始从后端 MariaDB Galera 集群(当前运行在 MariaDB 版本 10.3.16 上)收集指标,希望故障能够反映在收集到的指标上。

事实上,在应用程序开始出现严重故障的大约 12 小时前,“主”节点(即应用程序将写入定向到的节点)报告的 Innodb_row_lock_time 值开始以前所未有的速度增长。以下是过去一周展示这一事实的图表链接:

Innodb_row_lock_time每分钟变化

请注意,图表显示的是变化,而不是指标的当前值。MariaDB 服务器每 90 秒轮询一次,图表中的数据点指的是每分钟的变化。图表末尾附近的大下降表示 MariaDB 服务在“主”节点上重新启动的时间。

我的问题是如何进一步调查此症状并可能识别罪魁祸首查询或操作。我还将 InnoDB Monitor 的输出记录在日志文件中,但在 wiat_time 快速增长期间,我未能发现任何异常(尽管我不是数据库专家)。

我可以启用其他日志记录功能来提供更多信息吗?如果 InnoDB Monitor Output 应该提供所需的信息,那么我到底应该寻找什么?考虑到问题的突然出现,什么样的操作可能导致行被锁定这么长时间?

先感谢您。

相关内容