问题描述
ibtmp1 文件过大,大小 142G,磁盘即将占满
1 | -rw-r----- 1 mysql mysql 5.4M Aug 19 2019 ib_buffer_pool |
原因分析
ibtmp1
是非压缩的 innodb
临时表的独立表空间,通过innodb_temp_data_file_path
参数指定文件的路径,文件名和大小,默认配置为 ibtmp1:12M:autoextend
,也就是说在支持大文件的系统这个文件大小是可以无限增长的。
解决方法
修改
my.cnf
配置文件1
innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G
设置
innodb_fast_shutdown
参数1
SET GLOBAL innodb_fast_shutdown = 0;
关闭
mysql
服务删除
ibtmp1
文件(重启自动删除)启动
mysql
服务
注意:为了避免以后再出现类似的情况,一定要在限制临时表空间的最大值,如 innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G