非常抱歉,今天凌晨 3:20~8:30 左右,我们使用的阿里云 RDS 实例 SQL Server 2016 标准版突然出现 CPU 100% 故障,造成全站无法正常访问,由此给您带来巨大的麻烦,请您谅解。
问题很奇怪,故障期间是数据库服务器负载极低的时间段。从阿里云 RDS 控制台 CloudDBA 看,故障期间下面的一个 SQL 语句大量执行,并且极其消耗 CPU 。
开始我们以为是这个 SQL 语句引发的故障,但排查下来这个 SQL 语句本身并没有性能问题,而且已经使用了至少6个月。
最终恢复正常是通过 RDS 的2次主备切换,当发现故障后,我们立即进行主备切换,但切换后 CPU 依然 100% ,然后我们排查 SQL 语句的问题,排查未果,然后又进行一次主备切换,才恢复正常。
事后分析后发现应该是第一次主备切换没有成功完成,阿里云 RDS 控制台查看不到主备切换日志,但2次切换,只有第2次收到邮件通知,由此可以推断。
您的云数据库RDS实例:xxx(名称:enable or disable task fetching while rds2slb transgfer.)任务触发切换完毕,请检查程序连接是否正常,建议设置自动重连机制以避免切换影响。
问题的原因有待进一个分析,再次抱歉由此给您带来的麻烦。