10

我刚刚将我的 RDS 存储从 10GB 升级到 20GB,几天后 RDS 再次显示存储已满。

在 MySQL 工作台中针对同一个数据库运行此查询表示数据库大小为 43MB

SELECT table_schema "database_name", 
sum( data_length + index_length ) / 1024 / 
1024 "Data Base Size in MB", 
sum( data_free )/ 1024 / 1024 "Free Space in MB" 
FROM information_schema.TABLES 
GROUP BY table_schema ;  

那么,MySQL 创建的日志或备份等是否有问题可能会填满我在生产服务器上的存储空间。

请帮忙。

4

3 回答 3

5

它可能占用了这么多空间的 mysql.slow_log 表。
您可以通过执行以下 sql 来删除慢日志:

CALL mysql.rds_rotate_slow_log
于 2011-12-30T12:47:40.490 回答
0

mysql中有几种类型的日志。查看http://dev.mysql.com/doc/refman/5.1/en/server-logs.html。但我建议查看慢查询日志。如果您有很多缓慢的查询,您的日志将快速增加。还要检查选项 --log-queries-not-using-indexes。也许您在没有索引的情况下记录所有查询。

于 2011-08-26T22:00:31.157 回答
0

您的系统表空间可能正在消耗空间。

您可以使用以下查询进行检查:

select TABLESPACE_NAME,FILE_NAME,FREE_EXTENTS,TOTAL_EXTENTS,EXTENT_SIZE
from INFORMATION_SCHEMA.files 
where TABLESPACE_NAME in ('innodb_system','innodb_temporary');

尝试重新启动数据库。它应该可以解决问题。

于 2018-05-16T07:00:25.930 回答