场景描述
云数据库GaussDB(for MySQL)实例在11:30到12:27分内存使用率持续上升,最终触发内存超限。
图 内存使用率
原因分析
- 查看processlist.log日志,查询到有两个慢SQL与下图中内存增长的时间比较匹配。
图 查询慢SQL
- 查看慢查询中的表数据量约90GB,数据行数约10亿行,且通过下图中的执行时间可以看出,两个SQL执行了40~50分钟,跟监控中内存增长的时间基本一致,确定是临时表内存不受控导致。
解决方案
- 升级实例规格,将内存利用率维持在合理范围,防止业务突增导致实例OOM。变更实例规格的详细内容请参考。
- 根据业务实际情况优化慢查询。