注册

【重大问题】-读写分离主库被阻塞

codeonkbd 2025/07/25 586 1

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:
image.png
【操作系统】:银河麒麟
【CPU】:华为kunpeng920
【问题描述】*:

架构:1主2从的读写分离系统
现象:主业务应用的系统前台响应很慢,卡着。检查从库不卡,主库会卡DML操作
举例:
主库查询v$session:
下面是部分截图,实际有很多dml语句执行很慢,都要卡几百秒,看现象是被阻塞了
image.png
从库:
并没有明显慢sql

主库查询事务阻塞:可以看到确实有很多阻塞
image.png

目前已排除的点:
1、发生的时间点是在晚上23点,当时并没有多少人,也没有多少并发,排除掉
2、主库的备份在23点之前就已完成,排除掉
3、主库,从库,达梦的日志已排查无明显异常
4、系统作业时间上是避开的

image.png

现在临时解决:
手动kill掉阻塞会话系统恢复

可疑点:
1、是否会是主库在做dml操作的时候在等从库日志写完,此时主库被阻塞在等待,只有当从库数据完全落盘之后主库才能返回响应
2、从库有2台,是不是要等2个从库都落盘,主库才能得到响应
3、卡的时候都是主库被阻塞dml操作
4、上面阻塞的sql实际跟业务系统不相关,应用1是跑的主业务,出现阻塞的是应用2上跑的业务,2个应用是不同的Java线程,不同的事务,每次卡的时候都会出现阻塞,明明2个不相关,为啥会影响到主业务系统
4、此现象比较频繁,不是一次2次出现
5、主库归档配置如下
image.png

额外说明:
达梦有没有dump的功能?,想在达梦实例运行的时候转储当前进程或者线程正在运行的堆栈信息,想分析下卡在底层哪个方法上

回答 0
暂无回答
扫一扫
联系客服