Mysql存储引擎

对于一张mysql的表,需要存储表结构、数据和索引,存储引擎直接影响上面内容的存储方式

mysql主要存储引擎包括:MyISAM和InnoDB

MyISAM引擎不支持事务和外键、索引采用非聚簇索引,优势在于访问速度块对事务没有完整性要求,以select、insert为主的应用基本可以用这个引擎创建表。MyISAM表在磁盘上存储成3个文件,其文件名和表名相同,扩展名分别是:

  • .frm(存储表定义)

  • .MYD(MYData,存储数据)

  • .MYI(MYIndex,存储索引)

InnoDB引擎提供了具有提交、回滚和崩溃回复能力的事务安全,支持自动增长列、外键等功能,索引采用聚集索引,索引和数据存储在同一个文件,所以InnoDB的表在磁盘上有两个文件,其文件名和表名相同,扩展名分别是:

.frm(存储表的定义)

.ibd(存储数据和索引)

不同索引的区别:

你可能感兴趣的:(Mysql存储引擎)