InnoDB 存储引擎文件,为该存储引擎独有,包括表空间文件和重做日志文件。
1、表空间文件
InnoDB存储引擎的数据按照表空间进行存放,默认配置下有一个初始大小和默认名的文件,通过以下命令查看:
show variables like '%innodb_data_file_path%'
-- 文件名,文件大小,用完指定大小空间后是否自动增长
innodb_data_file_path ibdata1:12M:autoextend
在数据库安装目录下的data路径下,可以看到此文件。
基于 InnoDB 存储引擎的表的数据都会记录到此共享表空间中。
也可以为每个表设置独立的表空间,通过以下命令查看是否开启:
show variables like '%innodb_file_per_table%'
innodb_file_per_table ON
如果开启,每个表都会有一个表名.idb文件。
2、重做日志文件
每个InnoDB 存储引擎至少有一个重做日志文件组,包括2个重做日志文件。
在data目录下,可以看到默认的文件为:ib_logfile0 和 ib_logfile1。
与MySQL 的二进制日志文件不同的是:InnoDB 存储引擎的重做日志文件只记录该引擎的事务日志,并且记录每个页的更改的物理情况。
在事务进行中,重做日志条目会不断地被写到重做日志文件中。