MySQL数据库存储引擎 InnoDB、MyISAM、Memory

MySQL数据库存储引擎主要有以下三个:InnoDB,MyISAM和Memory

1、InnoDB

InnoDB是一种兼顾高可靠性和高性能的统一存储引擎,在MySQL5.5之后,InnoDB是默认的MySQL引擎。

1.1、InnoDB引擎的特点:

a.DML(数据操作语言)操作遵循AICD(Automicity,Consistency,Isolation,Durablity)模型,支持事务

b.行级锁,提高并发访问性能

c.支持外键约束,保证数据的完整性和正确性

1.2、文件

a.xxx.ibd:xxx代表表名,InnoDB引擎的每张表都会对应这样一个表空间文件,存储该表的表结构(frm,sdi)、数据和索引

除了每次运行SQL语句,还可以在cmd终端运行如下代码,也可以看到数据

ibd2sdi xxx.ibd

2、MyISAM引擎

MyISAM是MySQL早期的默认存储引擎

2.1、MyISAM特点:

a.不支持事务,不支持外键

b.支持表锁,不支持行锁

c.访问速度快

2.2、MyISAM文件:有三个

a.xxx.sdi:存储表结构信息

b.xxx.MYD:存储数据

c.xxx.MYI:存储索引

3、Memory引擎

Memory引擎的表数据是存储在内存中的,受英健问题、断电问题的影响,只能将这些表作为临时表火缓存使用

3.1、Memory引擎特点:

a.存放在内存中,访问速度快(因为数据存放在了内存中)

b.hash索引(默认)

3.2、文件

xxx.sdi:存储表结构信息(他的文件只有sdi,因为数据存放在了内存中)

你可能感兴趣的:(数据库,mysql)