MySQL 的存储引擎简介

使用show engines可以查看安装的MySQL的引擎相关信息

MySQL 的存储引擎简介_第1张图片

MySQL 的引擎不止这么多,这只是安装的这个版本有的引擎。可以看到,只有 InnoDB 支持事务,其他的引擎都是不支持事务的。

说几个我了解的比较多的引擎:

InnoDB

InnoDBMySQL现在的默认引擎,它是面向在线事务处理(OLTP)的应用,支持行锁,外键,以及非锁定读。每张表存储在一个独立的ibd文件中。一般用于修改比较频繁的场景。

MyISAM

MyISAM它是面向OLAP的数据库应用,不支持事务,不支持行锁,支持表锁,全文索引。存储文件包括 MYIMYDMYD用来存放数据文件,MYI 用来存放索引文件。一般用于查询较多,修改较少的场景

Memory

Memory 引擎的数据存放在内存内,查询速度快,一般可以用作临时表或者缓存类的

Archive

Archive引擎只支持INSERTSELECT操作,保存的数据占用的空间少,一般用于存储归档数据

NDB

NDB是一个集群存储引擎,数据全部放在内存中,不知道适合什么样的场景。

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