MySQL 5.7 ibtmp1临时文件导致磁盘满

下午接到一个磁盘告警,一个ibtmp1文件占用5.4T磁盘空间,首先这个不是tmp目录下的临时文件,也不是日志文件。所以以为就是业务写的数据导致磁盘满。

后面查了一下,得知这个是非压缩的innodb临时表的独立表空间:
MySQL [(none)]> show variables like '%innodb_temp_data_file_path%';
+----------------------------+-----------------------+
| Variable_name | Value |
+----------------------------+-----------------------+
| innodb_temp_data_file_path | ibtmp1:12M:autoextend |
+----------------------------+-----------------------+

紧急处理办法:
1)、SET GLOBAL innodb_fast_shutdown = 0;
2)、关闭mysql服务
3)、查看ibtmp1文件是不是在变小,也可以删除该文件
4)、重启mysql

注意:为了避免以后再出现类似的情况,一定要在限制临时表空间的最大值,如innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G

你可能感兴趣的:(MySQL 5.7 ibtmp1临时文件导致磁盘满)