目前广泛使用的是MyISAM和InnoDB两种引擎:
MyISAM
MyISAM引擎是MySQL 5.1及之前版本的默认引擎,它的特点是:
1、不支持行锁,读取时对需要读到的所有表加锁,写入时则对表加排它锁
2、不支持事务
3、不支持外键
4、不支持崩溃后的安全恢复
5、在表有读取查询的同时,支持往表中插入新纪录
6、支持BLOB和TEXT的前500个字符索引,支持全文索引
7、支持延迟更新索引,极大提升写入性能
8、对于不会进行修改的表,支持压缩表,极大减少磁盘空间占用
InnoDB
InnoDB在MySQL 5.5后成为默认索引,它的特点是:
1、支持行锁,采用MVCC来支持高并发
2、支持事务
3、支持外键
4、支持崩溃后的安全恢复
5、不支持全文索引
总体来讲,MyISAM适合SELECT密集型的表,而InnoDB适合INSERT和UPDATE密集型的表