MySQL Innodb--共享临时表空间和临时文件
在MySQL 5.7版本中引入Online DDL特性和共享临时表空间特性,临时数据主要存放形式为:
1、DML命令执行过程中文件排序(file sore)操作生成的临时文件,存储目录由参数tmpdir控制,以MY开头
2、超大事务提交生成binary log过程中用于数据缓存的临时文件,存储目录由参数tmpdir控制,以ML开头
3、使用ROW_FORMAT=COMPRESSED创建的压缩InnoDB临时表,存储目录由参数tmpdir控制,以frm和idb结尾
4、没用ROW_FORMAT=COMPRESSED创建的非压缩压缩InnoDB临时表,存储在由参数innodb_temp_data_file_path指定的共享临时文件中
5、使用COPY模式的Onine DDL创建的临时文件,存储在操作表相同目录下,以sql-开头,以frm和idb结尾
6、使用INPLACE模式的Onine DDL创建的临时文件,存储在操作表相同目录下,以sql-和sql-ib开头,以frm和idb结尾
7、Online DDL操作过程中排序操作使用的临时文件,存储目录由参数tmpdir控制,以ib开头
8、MySQL InnoDB存储引擎层使用的内部临时表,存储在由参数innodb_temp_data_file_path指定的共享临时文件中
MySQL 共享临时表空间(shared temporary tablespace)
在MySQL 5.7.1版本中引入,将临时表空间从系统表空间中独立处理,用来存放:
1、非压缩InnoDB临时表(non-compressed InnoDB temporary tables)
2、关系对象(related objects)
3、回滚段(rollback segment)
由于共享临时表空间主要存放的数据无需参与Crash Recovery,重启时可以被删除重建,方便回收空间。
共享临时表空间由参数innodb_temp_data_file_path控制,默认配置为ibtmp1:12M:autoextend,未指定路径时存在在innodb_data_home_dir下。
使用下面命令能查看MySQL临时目录下的文件
lsof |grep '/export/data/mysql/tmp/'
输出为:
mysqld mysql 5u REG , /export/data/mysql/tmp/ibW1DoSr (deleted)
mysqld mysql 6u REG , /export/data/mysql/tmp/ibAhuhtS (deleted)
mysqld mysql 7u REG , /export/data/mysql/tmp/ibiiHa4i (deleted)
mysqld mysql 8u REG , /export/data/mysql/tmp/ibeje7dX (deleted)
mysqld mysql 13u REG , /export/data/mysql/tmp/ibLORUJC (deleted)
mysqld mysql 2943u REG , /export/data/mysql/tmp/MLVChF9b (deleted)
mysqld mysql 3785u REG , /export/data/mysql/tmp/MLx6V0TO (deleted)
mysqld mysql 4795u REG , /export/data/mysql/tmp/MLz5r2Yv (deleted)
mysqld mysql 4928u REG , /export/data/mysql/tmp/ML7ivmrd (deleted)
mysqld mysql 5414u REG , /export/data/mysql/tmp/MLx4HGxW (deleted)
mysqld mysql 6105u REG , /export/data/mysql/tmp/MLADScmK (deleted)
mysqld mysql 6314u REG , /export/data/mysql/tmp/MLG8aCpz (deleted)
mysqld mysql 6315u REG , /export/data/mysql/tmp/MLJ7MuCo (deleted)
可以看到该目录下有ML开头和ib开头的文件,用来缓存BINLOG和排序结果。
MySQL Innodb--共享临时表空间和临时文件的更多相关文章
- Mysql InnoDB 共享表空间和独立表空间
前言:学习mysql的时候总是习惯性的和oracle数据库进行比较.在学习mysql InnoDB的存储结构的时候也免不了跟oracle进行比较.Oracle的数据存储有表空间.段.区.块.数据文件: ...
- Linux UDEV和为MySQL InnoDB共享表空间配置裸设备
⑴ UDEV 基础 udev 可管理保存在/dev 目录下的文件.文件只有在接入相应设备后才会生成.设备被拔出后自动删除 它还允许用户添加规则.以便修改/dev中默认的名称和权 ...
- 如何开启 MySQL InnoDB 共享表空间和独立表空间
修改数据库的表空间管理方式 修改my.ini文件的innodb_file_per_table的参数值即可,但是修改不能影响之前已经使用过的共享表空间和独立表空间: innodb_file_per_ta ...
- 【转载】Innodb共享表空间VS独立表空间
http://www.mysqlsupport.cn/innodb%E5%85%B1%E4%BA%AB%E8%A1%A8%E7%A9%BA%E9%97%B4vs%E7%8B%AC%E7%AB%8B%E ...
- [Mysql]Innodb 独立表空间和共享表空间
innodb有2中表空间方式: 共享表空间 和 独立表空间 查询数据的设置: show variables like '%per_table'; 默认是共享表空间,独立表空间在配置文件中添加 inno ...
- 使用参数innodb_file_per_table支持MySQL InnoDB表数据共享空间自动收缩
http://heylinux.com/archives/2367.html http://blog.csdn.net/ywh147/article/details/8996022 使用过MySQL的 ...
- MySQL 5.7临时表空间
MySQL 5.7起,开始采用独立的临时表空间(和独立的undo表空间不是一回事哟),命名ibtmp1文件,初始化12M,且默认无上限. 选项 innodb_temp_data_file_path 可 ...
- mysql之 共享表空间与独立表空间、frm,MYD,MYI.idb,par文件说明
一.共享表空间与独立表空间MySQL5.5默认是共享表空间 ,5.6中,默认是独立表空间. 共享表空间:ibdata1是InnoDB的共享表空间,默认配置是把全部表空间存放到ibdata1中,因此而造 ...
- MySQL innodb表使用表空间物理文件复制或迁移表
MySQL InnoDB引擎的表通过拷贝物理文件来进行单表或指定表的复制,可以想到多种方式,今天测试其中2种: 将innodb引擎的表修改为Myisam引擎,然后拷贝物理文件 直接拷贝innodb的表 ...
随机推荐
- 源码包的三个参数make-configure-make install解释
1.configure 这一步一般用来生成 Makefile,为下一步的编译做准备,你可以通过在 configure 后加上参数来对安装进行控制,比如代码: ./configure --prefix= ...
- (obj) error: LNK2019: 无法解析的外部符号解决方法
利用VS2010 C++ 调用 labview生成的动态库编程时无法生成exe 报错信息: Cjj_32.obj : error LNK2019: 无法解析的外部符号 _GetPXIResource@ ...
- Asp.net SignalR 让实时通讯变得如此简单
巡更项目中,需要发送实时消息,以及需要任务开始提醒,于是便有机会接触到SignalR,在使用过程中,发现用SignalR实现通信非常简单,下面我思明将从三个方面分享一下: 一.SignalR是什么 A ...
- vscode插件Power Mode
Power Mode官网 设置里添加 "powermode.enabled": true, "powermode.presets": "flames& ...
- mysql慢查询日记
mysql慢查询日记 <pre>#必须写到mysqld 注意给/tmp/showslowmysql.log 775权限 要写入权限[mysqld]#开启慢查询日记slow_query_lo ...
- 在ensp上的进行的浮动路由
原理 实验模拟内容 搭建实验拓扑 相关参数 其他设置端口ip都一样,serial也一样(三个路由器都要设置的) 简单测试一下连通性 下面我们分别在路由器上配置所在网段的静态路由 配置完之后我们来查看一 ...
- tomcat-修改端口--号
1.背景 在默认情况下,tomcat的端口是8080,使用了两个tomcat,那么就需要修改其中的一个的端口号才能使得两个同时工作. 2.方法 2.1改动一 那么,如何修改tomcat的端口号呢?首先 ...
- Vue框架初识01
摘要 vue简介 vue使用 一.Vue简介: 简介: Vue.js(读音 /vjuː/, 类似于 view)是一个构建数据驱动的 web 界面的渐进式框架.Vue.js 的目标是通过尽可能简单的 A ...
- python爬虫-80电子书,爬图片
''' 作者:Caric_lee 日期:2018 查看图片 ''' import requests from bs4 import BeautifulSoup r = requests.get(&qu ...
- [洛谷P5367]【模板】康托展开
题目大意:给定一个$n$的排列,求它在$n$的全排列中的名次 题解:康托展开,对于一个全排列,第$i$为有$n+1-i$种选择,用变进制数表示,这一位就是$n+1-i$进制.记排列中第$[1,i)$中 ...