更新时间:2022-10-26 GMT+08:00
长事务导致UNDO增多引起磁盘空间满
场景描述
实例触发磁盘满告警,一段时间后磁盘满告警自动恢复。
原因分析
- 由于MVCC机制,MySQL更新表中数据时会生成undo日志,会占用磁盘空间;所有会话的相关事务提交或回滚后,undo日志会被清理,导致磁盘空间下降。
- 当存在长事务时,长事务只要不提交,其他会话对相关表更新生成的undo就无法清理,导致磁盘空间一直上涨。
排查思路:
解决方案
- kill相应的长事务。
- 建议业务侧避免在磁盘空间紧张时,执行长事务不提交,或执行大量插入。
- 提前进行磁盘扩容。
父主题: 性能资源类