Products
GG网络技术分享 2025-11-21 00:56 3
MySQL有许多种存储引擎, MyISAM、InnoDB和XtraDB是其中常用的三种。那么它们有啥不一样呢?

MyISAM是MySQL的默认存储引擎, 当创建新鲜表时未指定新鲜表的存储引擎时默认用MyISAM。个个MyISAM在磁盘上存储成三个文件,文件名dou和表名相同, 名分别是.frm、MYD和.MYI。
InnoDB是索引组织表,也就是说索引就是数据。下图表T1的数据行以聚簇索引的方式展示, 非叶子节点保存了主键的值,叶子节点保存了主键的值以及对应的数据行。
MEMORY是数据库对象命名地方中的层次基本上用来解决命名冲突的问题。从概念上说 一个数据库系统包含优良几个Catalog,个个Catalog又包含优良几个Schema,而个个Schema又包含优良几个数据库对象。
MyISAM不支持事务, 也不支持外键,特别是访问速度迅速,对事务完整性没有要求或者以SELECT、INSERT为主的应用基本douNeng用这玩意儿引擎来创建表。
InnoDB存储引擎给了具有提交、回滚和崩溃恢复Neng力的事务平安。但是对比Myisam的存储引擎,InnoDB写的处理效率差一些并且会占用geng许多的磁盘地方以保留数据和索引。
MEMORY用存在内存中的内容来创建表。个个MEMORY表实际对应一个磁盘文件,格式是.frm。MEMORY类型的表访问非常迅速, 基本上原因是它到数据是放在内存中的,并且默认用HASH索引,但是一旦服务器关闭,表中的数据就会丢失,但表还会接着来存在。
了解MySQL的三种常用存储引擎, 有助于我们根据实际需求选择合适的存储引擎,提升数据库性Neng。
Demand feedback