html tool

2019年10月17日星期四

转:MySQL四种存储引擎(InnoDB、MyISAM、MEMORY、Archive)介绍和对比


http://www.05bk.com/300.html

1.InnoDB - b+

InnoDB官方特点描述是“支持事务,行级锁定和外键”。是事务型数据库的首选引擎,支持事务安全表 (ACID),支持行锁定和外键。MySQL5.5.5 之后,InnoDB作为默认存储引擎。如果要提供提交、回滚、崩溃恢复能力的事务安全(ACID兼容)能力,并要求实现并发控制,InnoDB是一个好的选择。

2.MyISAM - b+

MyISAM基于ISAM的存储引擎,并对其进行扩展。它是在Web、数据存储和其他应用环境下最常用的存储引擎之一。拥有较高的插入、查询速度,但不支持事务。在 MySQL5.5.5之前的版本中,MyISAM 是默认存储引擎。如果数据表主要用来插入和查询记录,则MyISAM引擎能提供较高的处理效率

3.MEMORY -b+/hash

MEMORY官方特点描述是“基于散列,存储在内存中,对临时表有用”。该存储引擎将表中的数据存储到内存中,为查询和引用其他表数据提供快速访问。不支持事务和外键。如果只是临时存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的Memory引擎,MySQL中使用该引擎作为临时表,存放查询的中间结果。

4.Archive - b+

Archive支持高并发的插入操作,但是本身不是事务安全的。Archive非常适合存储归档数据,如记录日志信息可以使用Archive。如果只有INSERT和SELECT操作,可以选择Archive。

5.查看MySQL支持的引擎和默认引擎

  1. SHOW ENGINES;
  2. #输出结果中Support列的值是YES代表目前mysql支持该类引擎,如果是DEFAULT代表是默认引擎。

6.查看MySQL某个表使用的引擎

  1. SHOW CREATE TABLE 表名;

7.四种存储引擎对比

功 能MYISAMMemoryInnoDBArchive
存储限制256TBRAM64TBNone
支持事物xxx
支持全文索引xxx
支持数索引x
支持哈希索引xxx
支持数据缓存xN/Ax
支持外键xxx

没有评论:

发表评论