MySQL的存储引擎(也称表类型)大概分为以下几种:
①MyISAM: 它不支持事务,也不支持外键,尤其是访问速度快,对事务完整性没有要求或者以SELECT、INSERT为主的应用基本都可以使用这个引擎来创建表。支持表锁。
②InnoDB: InnoDB是一个健壮的事务型存储引擎, 一般来说,如果需要事务支持,并且有较高的并发读取频率,InnoDB是不错的选择。支持表锁、行锁、外键。
③MEMORY : 使用MySQL Memory存储引擎的出发点是速度。为得到最快的响应时间,采用的逻辑存储介质是系统内存。 它要求存储在Memory数据表里的数据使用的是长度不变的格式,这意味着不能使用BLOB和TEXT这样的长度可变的数据类型,VARCHAR是一种长度可变的类型,但因为它在MySQL内部当做长度固定不变的CHAR类型,所以可以使用。 Memory同时支持散列索引和B树索引。
④ MERGE: MERGE存储引擎是一组MyISAM表的组合,这些MyISAM表结构必须完全相同,尽管其使用不如其它引擎突出,但是在某些情况下非常有用。
⑤ ARCHIVE: Archive是归档的意思,在归档之后很多的高级功能就不再支持了,仅仅支持最基本的插入和查询两种功能。 在MySQL 5.5版以前,Archive是不支持索引,但是在MySQL 5.5以后的版本中就开始支持索引了。