为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:03134284294-20241225-255012-20119 企业版
【操作系统】:Kylin Linux Advanced Server
release V10 (SP3) /(Lance)-aarch64-Build20/20221125
【CPU】:Kunpeng-920
【问题描述】*:
关于4月29日数据库(2节点DSC)异常的复盘及排查
一、故障结论
经分析数据库日志,4月29日01:01共享存储I/O超时导致ASM心跳中断引发集群异常。
已执行措施:调整备份窗口,已将定时备份任务由01:00延后至03:00,以避开高负载时段,后续将持续观察两周。部署nmon工具监控磁盘情况,监控数据库会话;
需协助排查事项:协助排查虚拟机(192.168.2.14)在4月29日01:01左右的底层状态:
链路健康度:检查共享存储是否有硬件报错或多路径抖动记录。
性能指标:确认该时间段存储是否存在高延迟或I/O拥塞现象。
二、事情经过
2026 年 4 月 29 日 07点46分,业务侧反馈数据库连接异常。经排查,192.168.2.14 节点的达梦 DSC 集群数据库实例因 ASM 存储 IO 异常导致进程意外终止,服务不可用。于 08点34分完成数据库服务恢复,业务连接恢复正常。
三、问题复盘
3.1、dsc实例日志(控制节点2.14)
01:00:38.535警告 数据页(1, 0, 254591)的 IO 操作耗时超过 3 秒,最大等待时间达 27 秒,说明磁盘 IO 响应严重超时。
01:00:38.535警告 重做日志写入磁盘等待时间达 18 秒,日志刷盘 IO 阻塞。
01:01:38.536警告 同一数据页 数据页(1, 0, 254591)IO 超时持续恶化,等待时间高达 87 秒,磁盘 IO 已基本挂死。
01:01:38.536警告 重做日志刷盘等待时间达 78 秒,日志写入完全阻塞。
01:01:39.319收到来自 CSS 集群的系统强制停止(SYS HALT)命令,集群管理进程已判定实例故障,强制终止服务。
3.2 ASM日志(控制节点2.14)
01:01:39.319 ASM 实例收到来自 CSS 集群控制服务的系统强制停止(SYS HALT)命令,命令序列号为 3112。这是集群管理进程判定 ASM 故障后,主动发送的停库指令;
01:01:39.319 ASM 实例收到停止命令后,执行强制中止(ABORT)关闭流程,直接终止进程;
3.3 CSS日志(控制节点2.14)
01:01:39.355 检测到 DSC73 数据库实例异常崩溃,CSS 将把它踢出集群并启动崩溃恢复流程。
01:01:41.357控制节点变更为 ep [255](即节点 1,DSC74),触发主节点切换。
01:01:41.389为防止循环重启,CSS 临时将自动重启开关从开启(1)改为关闭(0),这就是你之前看到的auto restart = FALSE的来源。(asm服务重启后没有自动拉起dsc实例服务的直接原因)
01:01:44.326 磁盘心跳线程刷新 10 个时间戳耗时 97 秒,说明共享磁盘 IO 严重阻塞 / 超时;
3.4 dsc日志、asm日志、css日志(节点2.15截图不做重复描述)
3.5 dsc集群服务恢复
3.5.1手动恢复故障节点服务
3.5.2 恢复dsc服务自动拉起功能
3.5.3 集群恢复后,asm日志
关键信息:atsk_process_resp_get_disk_info trim fail.group_id:[0], disk_id;[0]
0 号磁盘组的 0 号核心数据盘 IO 异常,Trim 操作失败 → 判断存储底层异常
3.6操作系统日志,未发现明显存储异常报错
