引擎
存储引擎是数据库底层软件组织。 数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据。 不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能。 MySQL的核心就是存储引擎。
查看引擎
SHOW ENGINES;
注:MySQL支持不同的表使用不同的存储引擎。
从查询结果可以得知MySQL的默认引擎是InnoDB,而且只有使用InnoDB时是支持事务的。
四个常用引擎
对于这些存储引擎,常用的有四个:
InnoDB
MyISAM
MEMORY
Archive
选择引擎
InnoDB,如果需要提供提交、回滚、崩溃恢复能力的事物安全(ACID兼容)能力,并要求实现并发控制,是一个好的选择
MyISAM,如果数据表主要用来插入和查询记录时,选MyISAM引擎能提供较高的处理效率
Memory,如果只是临时存放数据,数据量不大,并且不需要较高的数据安全性,可以选择将数据保存在内存中的Memory引擎,MySQL中使用该引擎作为临时表,存放查询的中间结果
Archive,如果只有INSERT和SELECT操作,可以选择Archive,Archive支持高并发的插入操作,但是本身不是事务安全的。Archive非常适合存储归档数据,如记录日志信息可以使用Archive
使用哪一种引擎需要灵活选择,一个数据库中多个表可以使用不同引擎以满足各种性能和实际需求,使用合适的存储引擎,将会提高整个数据库的性能