mysql案例~ ibtmp1临时表空间暴涨问题

一 简介: 来聊聊关于临时表文件暴涨的相关厂家

二 分析:

     1 mysql5.7已经可以设置单独的临时表目录,默认放置在数据目录,文件名为ibtmp1

     2 ibtmp1文件磁盘占用无法被释放,除非重启实例

  三 影响语句

      1 显示创建的临时表

      2 DDL 的更改列等copy方式的操作,需要拷贝数据到临时表中

      3 select 查询语句应用到临时表的类型

         注意 1  select 查询语句会先应用tmp_table_szie(内存分配)的量,当临时存储的量超过这个参数限制是,就会在ibtmp1中申请占用空间

                  2 select union all语句已进行了优化,不会利用临时表空间了

                  3  可能类型

                    1 select   order by group by    GROUP BY 无索引字段或GROUP  BY+ ORDER  BY 的子句字段不一样时

                    2 select   (select)   子查询

                    3 insert into select ...from ...   表数据复制 

                    4 select   union  select    联合语句

四 总结

    如果你的磁盘很小,一点要注意ibtmp1文件的大小,优化慢查询,减少大表的copy操作

原文地址:https://www.cnblogs.com/danhuangpai/p/11367466.html