-
InnoDB:InnoDB是一种兼顾高可靠性和高性能的通用存储引擎,在MySQL 5.5之后,InnoDB是默认的MySQL存储引擎。
特点:1、DML操作遵循ACID模型,支持事务;
2、行级锁,提高并发访问性能;
3、支持外键FOREIGN KEY约束,保证数据的完整性和正确性;
文件:xxx.ibd: xxx代表的是表名,innoDB引擎的每张表都会对应这样一个表空间文件,存储该表的表结构(frm、sdi)、数据和索引参数: innodb_file_per_table。
-
MyISAM:是早期MySQL使用的非事务型存储引擎,没有提供类似于InnoDB的事务功能,但有支持全文索引和压缩等功能。MyISAM对读操作的性能和空间利用率较高,在局域网上和相对较小的网站很受欢迎。
特点:1、不支持事务,不支持外键
2、支持表锁,不支持行锁
3、访问速度快
文件:
-
Memory:全部存储在内存中的存储引擎,可以快速地进行读写操作,但会受到内存限制。主要适用于一些临时表或者缓存数据等应用场景。
特点:1、内存存放
2、hash索引(默认)
文件:xxx.sdi:存储表结构信息