最近更新时间:2024.02.27 11:05:24
首次发布时间:2024.02.06 22:31:00
为什么云数据库 MySQL 版不支持 MyISAM 引擎、 Memory 引擎?
云数据库 MySQL 版在 MySQL 5.7 及以上版本中默认支持 InnoDB 引擎,不再支持 MyISAM 引擎和 Memory 引擎,主要原因是:
云数据库 MySQL 版对 InnoDB 做了很多内核优化,已具备明显的性能优势。
MyISAM 采用的是表级锁机制,而 InnoDB 采用的是行级锁机制,InnoDB 在通常情况下具备更高的写入效率。
MyISAM 对数据完整性的保护存在缺陷,这些缺陷会导致数据库数据的损坏甚至丢失。这些缺陷多为设计问题,无法在不破坏兼容性的前提下进行修复。
MyISAM 和 Memory 向 InnoDB 的迁移代价低,大多数应用仅需要改动建表的代码即可完成迁移。
MySQL 的发展在向 InnoDB 转移。在官方最新的 MySQL 8.0 版本中,系统表均已采用 InnoDB。
Memory 无法保证数据的完整性,实例重启或者切换主备节点时,表中的所有数据都会丢失。
如您对 MyISAM 引擎和 Memory 引擎有特别需要,可提交工单联系云数据库 MySQL 版技术支持。