磁盘超用问题

最近更新时间:2020-07-16 18:29:44

磁盘超用锁定说明

为避免您的数据丢失,自2020年8月3日起,腾讯云数据库 MariaDB 将对磁盘使用率大于等于150%的实例进行锁定,磁盘锁定之后,将无法进行写入操作。请合理安排您的存储空间,并提前对磁盘即将超用的实例进行清理或扩容。

磁盘空间组成

  • 数据空间:您的数据所占用的空间。
  • 系统文件空间:系统表空间文件、redolog 和 undolog、临时文件等。
    说明:

    binlog 文件空间为腾讯云免费赠送,不会占用您购买的磁盘空间容量。

磁盘超用原因

造成磁盘超用的原因可能有以下几点:

  • 数据空间占用过大:随着业务的扩大,新数据不断插入,导致数据空间会一直增长。

  • 临时文件占用过大:执行带有 order by、group by 的复杂查询,或 alter table 语句时,会产生部分临时表。临时表较小时会存放在内存,过大将会放入磁盘中。

  • 系统文件占用过大:数据库在安装时会初始化一些系统文件来维持正常运行,长时间有事务未提交,同时数据库中有大量的更新、插入、删除操作,将可能导致记录事务信息的日志过大。

解决方法

磁盘超用后,建议您通过以下方式排查导致磁盘超用的原因:

  • 数据空间占用过大,您可以删除无用的历史表数据释放空间,或者在 控制台 进行实例的磁盘配置调整,扩容后的实例将恢复完整的读写功能。

  • 临时文件占用过大,大多是因为应用中存在大量的排序、分组等查询语句,您可以进行相应语句的 SQL 优化,同时监控和清理执行时间过长的会话或事务,来减少临时文件的产生。

  • 系统文件占用过大, 可能是因为存在长时间未结束的查询导致 ibdata1 文件过大,您可以监控和清理执行时间过长的会话或事务,减少系统文件的冗余。

目录