01-InnoDB存储引擎模式
举例: 数据库a , 表b
数据库目录下,也就是/data/a目录下会产生1个或者2个文件:
- b.frm:描述表结构文件,字段长度等;
- 如果采用
系统表空间
模式,数据信息和索引信息都存储在ibddata1
文件中 - 如果采用
独立表空间
存储模式,data\a中还会产生b.ibd
文件(存储数据信息和索引信息)
此外:
- MySQL5.7中会在data/a的目录下生成一个
表名.opt
文件,也就是b.opt,用来存储数据库的相关配置,如:字符集、比较规则。 - 但是在MySQL8中不再提供
.opt
文件和.frm
文件,都整合在了.ibd
文件中
小结:InnoDB这种数据库文件存储方式,将表的索引信息和数据信息存在一起,叫做聚簇索引
02-MyISAM存储引擎模式
举例: 数据库a , 表b
数据库目录下,也就是data\a中会产生3个文件:
-
MySQL5.7 中
b.frm
:描述表结构文件,字段长度等。MySQL8.0 中
b.xxx.sdi
:描述表结构文件,字段长度等 -
b.MYD (MYData)
:数据信息文件,存储数据信息(如果采用独立表存储模式) -
b.MYI (MYIndex)
:存放索引信息文件
小结:MyISAM这种数据库文件存储方式,将表的索引信息和数据信息分开存储,叫做非聚簇索引