云数据库 RDS-RDS for MySQL支持哪些存储引擎:其他存储引擎

时间:2024-08-14 10:01:54

其他存储引擎

在MySQL 5.6及以上的版本中,不支持的存储引擎如表1所示:

表1 存储引擎约束限制

引擎

原因

MyISAM引擎

  • MyISAM引擎表不支持事务,仅支持表级别锁,导致读写操作相互冲突。
  • MyISAM对数据完整性的保护存在缺陷,且这些缺陷会导致数据库数据的损坏甚至丢失。
  • MyISAM在出现数据损害情况下,很多都需要手动修复,无法通过产品服务提供的恢复功能进行数据恢复。
  • MyISAM向InnoDB的迁移透明,大多数情况不需要改动建表的代码,云数据库自动转换InnoDB即可完成迁移。

FEDERATED引擎

  • 主备实例支持FEDERATED引擎会导致在远端数据库上相同DML重复执行,导致数据错乱。
  • FEDERATED引擎会在时间点恢复场景,当全量恢复完成后,远端数据库上数据不会跟随全量备份恢复到全备时的数据状态,在增量恢复阶段再应用数据会导致FEDERATED表数据错乱。

Memory引擎

  • 如果内存表隐式的变空,那在Open表的时候数据库就会自己产生一个DELETE event到binlog中。这样当HA集群使用了内存表,那么重启HA,备库(或者只读库)就会自己产生一个自己的GTID,导致主备不一致,进而引发备库重建,甚至导致备库会不停的重建。
  • 使用Memory表,会存在OOM的风险,导致服务被终止。
support.huaweicloud.com/rds_faq/rds_faq_0041.html