TOC

MySQL 常见引擎

SHOW VARIABLES LIKE '%engine%';
SHOW ENGINES;

以 MySQL 8.0 为例:

除了 PERFORMANCE_SCHEMA,

Engine Support Comment Transactions XA Savepoints
ARCHIVE YES Archive storage engine NO NO NO
BLACKHOLE YES /dev/null storage engine (anything you write to it disappears) NO NO NO
MRG_MYISAM YES Collection of identical MyISAM tables NO NO NO
FEDERATED NO Federated MySQL storage engine NULL NULL NULL
MyISAM YES MyISAM storage engine NO NO NO
InnoDB DEFAULT Supports transactions, row-level locking, and foreign keys YES YES YES
MEMORY YES Hash based, stored in memory, useful for temporary tables NO NO NO
CSV YES CSV storage engine NO NO NO

Percona (8.0) 和 MySQL 保持一致,不过 InnoDB 实际被替换成他们自己开发的兼容引擎 XtraDB。

MariaDB (10.1.45) 也使用 XtraDB 替换了 InnoDB,而且没有 BLACKHOKE, ARCHIVE,但是多了:

Engine Support Comment Transactions XA Savepoints
TokuDB DEFAULT Percona TokuDB Storage Engine with Fractal Tree(tm) Technology YES YES YES
SEQUENCE YES Generated tables filled with sequential values YES NO YES
Aria YES Crash-safe tables with MyISAM heritage NO NO NO

MyISAM

在 2010 年发布的 MySQL 5.5.5 之前,一直是 MySQL 的默认引擎。

InnoDB

InnoDB 是甲骨文的。

TokuDB

TokuTek 公司开发,后来被 Percona 公司收购,现在已被 Percona 废弃(仓库归档)。

其他

  • Blackhole
  • Mrg_MyISAM
  • Memory
  • CSV
  • Archive

第三方

  • federated

参考资料与拓展阅读

如果你有魔法,你可以看到一个评论框~