Mysql innodb 文件

Innodb数据存储

Innodb存储引擎将存储的数据按表空间进行存放,默认会一个10MB, 名字为ibdata1的文件

innodb_data_file_path = ibdata1:2000MB; ibdata2:2000MB:autoextend;

设置了innodb_data_file_path 参数以后所有innodb引擎的数据都会保存在设置的文件里面
当参数innodb_file_per_table设置了以后, 每个innodb表的将生成一个单独.idb的文件来存储数据, 这个单独的.idb表空间文件只存储该表的数据,索引和插入缓冲等信息. 其它的信息还是放在默认的表空间里面, 表空间又由段(segment),区(extent),页(page)组成.

Innodb 日志文件

在mysql文件下面有两个文件ib_logfile0和ib_logfile1, 这两个是innodb的日志文件,记录了innodb引擎的事务日志,也叫做innodb重做日志
重做日志文件的主要目的是,万一事务失败或者事务执行时断电,这时可以通过重做日志文件来恢复
设置参数:

  • innodb_log_file_size
  • innodb_log_file_in_group
  • innodb_mirrored_log_groups