这篇文章主要讲解了“MYSQL5.7中临时文件的用法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MYSQL5.7中临时文件的用法”吧!
 
      使用临时文件
一、使用tmpdir
1、执行计划file sort    文件名字MY开头
lsof|grep delete
如:/tmp/MYdRH1GW (deleted)
 
 
2、大事物binary log缓存 文件名字ML开头
lsof|grep delete
如:/tmp/MLq9INFu (deleted)
 
 
3、压缩的tempory table  
CREATE TEMPORARY TABLE tmp_table1(id int) ROW_FORMAT=COMPRESSED ;
ls /tmp/
如:
#sql6b82_6_7.frm
#sql6b82_6_7.ibd
 
 
4、online DDL 涉及排序比如add key
alter table testsort add key(id);
lsof|grep delete
如:
/tmp/ibCxlYQg (deleted)
/tmp/ib51nvZ1 (deleted)
设置 innodb_tmpdir可以将这类文件放到指定的目录
 
 
二、使用innodb_temp_data_file_path
1、执行计划use temporay table 5.7以后为innodb 内部表
2、非压缩tempory table  
CREATE TEMPORARY TABLE tmp_table1(id int);
可以使用 select * from INNODB_TEMP_TABLE_INFO  ;查询
这些也看不到 表现为innodb表
 
 
三、使用innodb data
就是online ddl
1、ALGORITHM copy 名字为 #sql-
  alter table testsort ALGORITHM=copy ,add  im int  ;
#sql-6b82_6.frm
#sql-6b82_6.ibd
 
 
2、ALGORITHM inplace 名字为 #sql-ib
  alter table test add key id int
比如
#sql-6b82_6.frm
#sql-ib59-867962583.ibd
但是涉及到排序比如add key 则使用tmpdir或者innodb_tmpdir见上
 
 
感谢各位的阅读,以上就是“MYSQL5.7中临时文件的用法”的内容了,经过本文的学习后,相信大家对MYSQL5.7中临时文件的用法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。

dawei

【声明】:达州站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。