案例分享:MySQL大事务回滚引发宕库
点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!
故障背景
某项目中1套MySQL数据库,数据库架构为1主3从,事故日当前出现2次MySQL宕库现象。
【数据库架构】
处理过程
2.1 168.3MySQL错误日志,在数据库服务异常时间点存在事务rollback操作




innodb_log_file_size<br>innodb_log_files_in_group<br>innodb_doublewrite
2.4 168.1异常时间点binlog日志分析2.5 业务操作行为分析在168.3、168.1MySQL主库2次宕库时间前,都有业务ES重启操作行为,且ES重启时间点与MySQL 服务异常时间点非常吻合,推断MySQL服务宕机可能由ES重启行为引发。2.6 168.3MySQL错误日志,undo与redo相差约70G的redo日志,存在大事务或多事务rollback操作行为
问题原因及处理
3.1 从库有DDL变更操作行为
168.3、168.1MySQL数据库宕机都是由rollback语句触发的,说明异常的时间点前存在业务大事务或很多事物操作行为,而MySQL数据库在rollback过程中引发数据库服务宕机。