Setting the Storage Engine Feature MyISAM Memory InnoDB Archive NDB Full-text search indexes Yes No Yes (note 6) No No Geospatial data type support Yes No Yes Yes Yes Geospatial indexing support Yes No Yes (note 7) No No Hash indexes No Yes No (note 8) No Yes Index caches Yes N/A Yes No Yes Locking granularity Table Table Row Row Row MVCC No No Yes No No Replication support (note 1) Yes Limited (note 9) Yes Yes Yes Storage limits 256TB RAM 64TB None 384EB T-tree indexes No No No No Yes Transactions No No Yes No Yes Update statistics for data dictionary Yes Yes Yes Yes Yes Notes: 1. Implemented in the server, rather than in the storage engine. 2. Compressed MyISAM tables are supported only when using the compressed row format. Tables using the compressed row format with MyISAM are read only. 3. Implemented in the server via encryption functions. 4. Implemented in the server via encryption functions; In MySQL 5.7 and later, data-at-rest encryption is supported. 5. Support for foreign keys is available in MySQL Cluster NDB 7.3 and later. 6. Support for FULLTEXT indexes is available in MySQL 5.6 and later. 7. Support for geospatial indexing is available in MySQL 5.7 and later. 8. InnoDB utilizes hash indexes internally for its Adaptive Hash Index feature. 9. See the discussion later in this section. When you create a new table, you can specify which storage engine to use by adding an  ENGINE  table option to the  CREATE TABLE  statement: 16.1 Setting the Storage Engine -- ENGINE=INNODB not needed unless you have set a different -- default storage engine. CREATE TABLE t1 (i INT) ENGINE = INNODB; 3400