MYSQL 数据文件

MyISAM 用".MYD" 作为扩展名,Innodb 用".idb" ,Archive 用".arc", CSV 用".csv"

1. ".frm" 文件

包括表结构的定义信息等。不论是什么存储引擎,每一个表都会有一个以表名命名的 ".frm" 文件。所有的 ".frm" 文件都存放在所属数据库的文件夹下面。

2. ".MYD" 文件

存放MyISAM 表的数据。每一个MYI 表都会有一个 ".MYD" 文件与之对应,同样存放于所属数据库的文件夹下,和 ".frm" 文件在一起。

3. ".MYI" 文件

主要存放MyISAM 表的索引相关信息。对应于MyISAM存储来说,可以被cache 的内容主要就是来源于 ".MYI" 文件中。每一个MyISAM 表对应一个 ".MYI" 文件,存放位置和 ".frm" 以及 ".MYD" 一样。

4. ".ibd" 文件和 ibdata 文件

这两种文件都是存放Innodb 数据的文件,之所以有两种文件来存放Innodb 的数据(包括索引),是因为Innodb 的数存储方式能够通过配置来解决是使用共享表空间存放存储数据,还是独享表空间存放存储数据。
独享表空间存储方式使用 ".idb" 文件来存放数据,且每个表一个 ".idb" 文件,文件存放在和MyISAM 数据相同的位置。
如果选用共享存储表空间来存放数据,则会使用 ibdata 文件来存放,所有表共同使用一个(或者多个,可自行配置)ibdata 文件。ibdata 文件可以通过 innodb_data_home_dir 和 innodb_data_file_path 两个参数共同配置组成

内容摘录:mysql性能调优与架构设计