数据库中的存储引擎
存储引擎:是基于数据库里的表,存储数据,建立索引,更新/查询数据等技术的实现方式
InnoDB:
InnoDB:是一种兼顾高可靠性和高性能的通用存储引擎
特点:
- DML操作遵循ACID模型,支持事务;
- 用的是行级锁,提高了并发访问性能;
- 支持外键,保证了数据的一致性;
文件:
xxx.ibd:xxx代表的是表名,innodb引擎的每张表都会对应一个表空间文件,存储该表的表结构,数据和索引
参数:innodb_file_per_table 如:show variables like ‘innodb_file_per_table’;
逻辑存储结构:
- tablespece :表空间
- segment:段
- extent:区(1M)
- page:页
- row:行
MyIsAM:
特点:
- 不支持事务,不支持外键
- 用的是表锁,不支持行锁
- 访问速度快
文件:
- xxx.sdi:存储表的结构信息
- xxx.MYD:存储数据
- xxx.MYI:存储索引
Memory
特点:
- 内存存放
- hash索引(默认)
文件:xxx.sdi:内存表结构信息