ibtmp1文件过大

有个数据库发现磁盘告警 已经100% 经过排查发现数据库的data目录下有个

ibtmp1是个什么东西呢?查看官方文档后发现

The temporary tablespace is a tablespace for non-compressed InnoDB temporary tables and related objects. The configuration option, innodb_temp_data_file_path, defines a relative path for the temporary tablespace data file. If innodb_temp_data_file_path is not defined, a single auto-extending 12MB data file named ibtmp1 is created in the data directory. The temporary tablespace is recreated on each server start and receives a dynamically generated space ID, which helps avoid conflicts with existing space IDs. The temporary tablespace cannot reside on a raw device. Startup is refused if the temporary tablespace cannot be created.

The temporary tablespace is removed on normal shutdown or on an aborted initialization. The temporary tablespace is not removed when a crash occurs. In this case, the database administrator may remove the temporary tablespace manually or restart the server with the same configuration, which removes and recreates the temporary tablespace

这是非压缩的innodb临时表的独立表空间。通过innodb_temp_data_file_path参数指定文件的路径,文件名和大小,默认配置为ibtmp1:12M:autoextend,也就是说在支持大文件的系统这个文件大小是可以无限增长的。

该参数是5.7的新特性

针对临时表及相关对象引入新的“non-redo” undo log,存放于临时表空间。该类型的undo log非 redolog 因为临时表不需崩溃恢复、也就无需redo logs,但却需要 undo log用于回滚、MVCC等。默认的临时表空间文件为ibtmp1,位于数据目录在每次服务器启动时被重新创建,可通过innodb_temp_data_file_path指定临时表空间。(http://dev.mysql.com/doc/refman/5.7/en/innodb-temporary-table-undo-logs.html)

解决办法:

1,修改my.cnf配置文件:

innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G

2,设置innodb_fast_shutdown参数

SET GLOBAL innodb_fast_shutdown = 0;  #InnoDB does a slow shutdown, a full purge and a change buffer merge before shutting down

3,关闭mysql服务

4,删除ibtmp1文件

5,启动mysql服务

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

(0)

相关推荐

  • Linux下修改MySQL数据库数据文件路径

    使用rpm安装方式安装完MySQL数据库后,数据文件的默认路径为/var/lib/mysql,然而根目录并不适合用于存储数据文件. 原路径:/var/lib/mysql 目标路径:/home/mysq ...

  • MySQL 8.0 表空间机制

    墨墨导读:数据是以表空间来维护和存放的.在表空间中包含数据,结构,索引等信息,如何有效使用表空间对于MySQL来说非常重要. 数据库的表空间是用来存储数据的逻辑空间,也是存储数据的最大逻辑单元,其下还 ...

  • mysql 5.7.25中ibtmp1文件过大

    问题描述 生产环境linux suse11.4, 根目录/ 下大小:50G, ibtmp1大小:31G, 磁盘空间爆满100%告警. ibtmp1文件说明 ibtmp1是非压缩的innodb临时表的独 ...

  • 惊! BC内部文件泄露 大温各市真实感染数据瘆人 变种超恐怖! 遮羞布被揭开了!

    阴阳文件打脸"抗疫大省" 疫情以来,加拿大民众曾多次质疑政府隐瞒疫情信息,认为实际感染率远比官方宣布的要高.但没有证据,这些终归是质疑. 然而,就在昨天,BC省疾控中心CDC一份内 ...

  • pdf文件太大如何变小?

    这生活工作学习中遇到的麻烦事儿可真是不少,就像我们在整理完成一个pdf格式的文件资料后,准备完成最后一步发给领导查阅,但是发现文件太大发送不了!这虽说不是什么大问题,但是成年人的崩溃往往就在一瞬间(手 ...

  • 文件太大影响传输速度,pdf文件过大如何缩小?

    PDF文件过大怎么压缩?PDF是我们工作和学习中常用的文件,但是有些PDF文件内容很多体积很大,打开以及传输都会比较麻烦.有些邮箱或者通讯工具,对传输的文件会有容量的限制,这种时候我们就不得不对文件进 ...

  • 文件太大无法上传,如何有效压缩PDF?

    导言 Hello,大家好,我是伊曼! 今天给大家讲个小技巧,即如何压缩PDF? 工作或科研中,传送或上传的PDF文件经常有大小的限制(如领导要求.系统限定.邮箱空间小等),此时压缩PDF就显得很必要. ...

  • PDF文件太大,如何压缩变小

    现在,PDF文件在我们的工作中越来越多地被使用. 有时为了上传或传输PDF文件,PDF文件太大而无法上传,这会让我们的上班工作效率大打折扣. 在这种情况下,我们需要压缩PDF文件以解决此类问题. 那么 ...

  • 微信大于200M文件不能发送?其实改个后缀名,文件再大也能发

    经常使用微信聊天,不仅仅是单纯的联络感情,工作上一些交流也需要使用到微信,其中使用微信发送大文件,尤其是视频之类的文件,是经常有的事情. 但微信发送文件不能大于200M是个难题,很多时候都不知道怎么办 ...

  • U盘提示未被格式化怎么办?U盘拷贝文件提示文件过大怎么办?

    在使用U盘的时会出现这样的问题:插入U盘点击时,提示磁盘未被格式化,问是否进行格式化.确定要格式化了,又提醒windows无法完成格式化.这时候右击U盘选择属性,发现可用空间和已用空间都显示的是0字节 ...

  • Power BI文件太大无法发布?这个方法推荐给你

    文/瓶子 目前从事职考行业的数据运营,喜欢钻研power bi和excel来实现自动化. 最近经常在工作中遇到报表太大发布不了,或者明明使用相同的数据集,却因为要做不同的报告,需另外花费时间制作同一份 ...