RDS MySQL不支持MyISAM引擎的主要原因有如下几个:
-
MyISAM对数据完整性的保护存在缺陷,且这些缺陷会导致数据库数据的损坏甚至丢失。另外,这些缺陷很多是设计问题,无法在不破坏兼容性的前提下修复。
-
MyISAM在出现数据损害情况下,很多都需要手工修复,无法适用于产品服务的方式。
-
对于RDS的存储而言,MyISAM对于I/O的操作不是最优化的方案,导致MyISAM的性能相对于InnoDB的优势不大。
-
MyISAM向InnoDB的迁移代价低,大多数应用仅需要改动建表的代码即可完成迁移。
-
MyISAM的发展在向InnoDB转移,在5.7和8.0版本中MySQL可以完全不是MyISAM,系统的数控也被转移到了InnoDB。