
# TaurusDB标准版支持哪些存储引擎
数据库存储引擎就是一种数据存储方式。使用数据存储引擎实现**存储、处理和保护数据的核心服务**。利用数据库引擎可控制访问权限并快速处理事务，从而满足企业内大多数需要处理大量数据的应用程序要求。
#### InnoDB存储引擎
TaurusDB标准版数据库只有InnoDB存储引擎支持完整的备份、恢复等服务功能，因此TaurusDB标准版推荐使用InnoDB引擎。
#### 其他存储引擎
在5.7及以上的版本中，不支持的存储引擎如[表1]所示：
 表1存储引擎约束限制 
| 引擎              | 原因                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|
| **MyISAM引擎**    | - MyISAM引擎表不支持事务，仅支持表级别锁，导致读写操作相互冲突。  - MyISAM对数据完整性的保护存在缺陷，且这些缺陷会导致数据库数据的损坏甚至丢失。  - MyISAM在出现数据损害情况下，很多都需要手动修复，无法通过产品服务提供的恢复功能进行数据恢复。  - MyISAM向InnoDB的迁移透明，大多数情况不需要改动建表的代码，云数据库自动转换InnoDB即可完成迁移。   |
| **FEDERATED引擎** | - 主备节点支持FEDERATED引擎会导致在远端数据库上相同DML重复执行，导致数据错乱。  - FEDERATED引擎会在时间点恢复场景，当全量恢复完成后，远端数据库上数据不会跟随全量备份恢复到全备时的数据状态，在增量恢复阶段再应用数据会导致FEDERATED表数据错乱。                                                                                                                                                                                                                                                           |
| **Memory引擎**    | - 如果内存表隐式的变空，那在Open表的时候数据库就会自己产生一个DELETE event到binlog中。这样当HA集群使用了内存表，那么重启HA，备库（或者只读库）就会自己产生一个自己的GTID，导致主备不一致，进而引发备库重建，甚至导致备库会不停的重建。  - 使用Memory表，会存在OOM的风险，导致服务被终止。                                                                                                                                                                                                                                       |
   
#### 相关问题
Q：登录TaurusDB标准版实例后，使用SQL命令查询存储引擎，发现与MySQL官方文档展示的不一致时以哪个为准？
A：以MySQL官方文档为准。在**show engines**的基础上，真实可用的存储引擎还要考虑MySQL社区的参数"disabled_storage_engines"，该参数中的引擎实际不可用。
