【场景】
MySQL实例可能长时间运行,未进行磁盘及数据管理,导致磁盘使用率升高。尤其当实例显示“磁盘空间满”状态,且数据库不可进行写入操作,会导致实例异常、数据库备份失败潜在风险、数据库实例只读状态。从而影响业务正常运行。
本文档通过分析及解决以下引起磁盘使用率高的场景,提前预防磁盘使用率高导致实例异常,只读状态的问题。
1)磁盘利用率月/季度平均增长过快。
2)delete删除数据后磁盘空间使用率无变化
3)冷数据迁移
4)大事务快速生成Binlog文件
5)查询产生临时文件过大
6)大事务未提交前产生binlog cache文件
【场景1】每月/每季度磁盘利用率平均增长过快
例如Mysql数据库总容量560G,根据近期3个月的磁盘监控数据分析每月的数据增长率占磁盘容量约10%(56G),当前磁盘使用率81.06%,按每月10%的增长率,当前容量2月后磁盘使用率到100%,存在磁盘满后数据库备份失败潜在风险,数据库状态只读风险。
【分析】:查询数据库磁盘监控指标
【解决方法】:建议扩容磁盘容量,扩容大小=(当前磁盘总容量)560G*10%(月数据增量率)*X(月),根据实际情况制定扩容计划(按月扩容、按季度扩容)
【场景2】delete删除数据后磁盘空间使用率无变化
【分析】:DELETE只是将数