14.1 InnoDB 简介

InnoDB是通用存储引擎,可兼顾高可靠性和高性能。在 MySQL 5.7 中,InnoDB是默认的 MySQL 存储引擎。除非您配置了其他默认存储引擎,否则发出不带ENGINE=子句的CREATE TABLE语句将创建InnoDBtable。

InnoDB 的主要优势

table14.1 InnoDB 存储引擎功能

FeatureSupport
B-tree indexesYes
备份/时间点恢复 (在服务器中而不是在存储引擎中实现.)Yes
集群数据库支持No
Clustered indexesYes
Compressed dataYes
Data cachesYes
Encrypted data是(通过加密功能在服务器中实现;在 MySQL 5.7 和更高版本中,支持静态数据 table 空间加密.)
外键支持Yes
全文搜索索引是(MySQL 5.6 和更高版本提供 InnoDB 对 FULLTEXT 索引的支持.)
地理空间数据类型支持Yes
地理空间索引支持是(MySQL 5.7 和更高版本提供 InnoDB 对地理空间索引的支持.)
Hash indexes否(InnoDB 在内部将哈希索引用于其自适应哈希索引功能.)
Index cachesYes
Locking granularityRow
MVCCYes
复制支持 (在服务器中而不是在存储引擎中实现.)Yes
Storage limits64TB
T-tree indexesNo
TransactionsYes
更新数据字典的统计信息Yes

要将InnoDB的功能与 MySQL 随附的其他存储引擎进行比较,请参阅第 15 章,备用存储引擎中的*“存储引擎功能”table。

InnoDB 增强功能和新功能

有关InnoDB增强功能和新功能的信息,请参阅:

其他 InnoDB 信息和资源