Mysql(二)mysql文件认识

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zl_1079167478/article/details/83748566

MySQL中文件存储形式(InnoDB)

  1. 日志组文件:

可以发现,./目录下数据存在日志组文件: ib_logfile0和ib_logfile1,默认均为5M。

  1. 表结构文件:*.frm

在MYSQL中建立任何一张数据表,在其数据存放目录对应的数据库目录下都有对应表的.frm文件,
.frm文件是用来保存每个数据表的元数据(meta)信息,包括表结构的定义等,
在MySQL中,“.frm”文件跟数据库存储引擎无关,任何存储引擎的数据表结构文件都存储为.frm文件,
命名方式为“tablename.frm”,如scores.frm,.frm文件可以用来在数据库崩溃时恢复表结构。

  1. 独占表空间文件:*.ibd

在innodb_file_per_table配置为ON时设置为独占表空间,此时,系统将为每一个表单独存储为“.ibd”文件,
(如scores.ibd)在此文件中,存储与该表相关的数据、索引、表的内部数据字典信息。

  1. 字符集和排序规则文件:db.opt

文件中记录了该库的默认字符集编码和字符集排序规则。如果你创建数据库指定默认字符集和排序规则,
后续创建的表如果没有指定字符集和排序规则,那么该新建的表将采用db.opt文件中指定的属性。如果删除这个db.opt,MySQL在建表时将参照全局的字符设置,即default-character-set ,这个影响是在建表的时候才会有体现,你不在那个库新建表,是没什么差异的。

  1. binlog二进制日志文件:记录主数据库服务器的DDL和DML操作。

在主从复制时,二进制日志文件将通过Binlog Dump线程传递给从服务器的I/O线程,
I/O线程获取事件数据后传递给从服务器的relaylog,然后在从服务器重做一遍实行复制。

猜你喜欢

转载自blog.csdn.net/zl_1079167478/article/details/83748566