AWS RDS aurora Mysql 5.6 无法使用不同于默认的引擎创建 table

AWS RDS aurora Mysql 5.6 cannot create table with engine different than default

问题:无法在 AURORA MySQL 5.6 RDS

上使用 MyISAM 存储引擎创建 table

配置:

我有 RDSAurora MySQL 5.6.10a

default_storage_engine 设置为 InnoDB 且无法修改 (Modifiable = false)。

当我运行命令

SHOW ENGINES

我收到:

+----------+---------+-------------------------+--------------+------+------------+
| Engine   | Support | Comment                 | Transactions | XA   | Savepoints |
+----------+---------+-------------------------+--------------+------+------------+
| 'MyISAM' | 'YES'   | 'MyISAM storage engine' | 'NO'         | 'NO' | 'NO'       |
+----------+---------+-------------------------+--------------+------+------------+

我的目标:

正在使用 MyISAM 搜索引擎创建 table。

会发生什么:

当我尝试使用命令创建 table 时:

CREATE TABLE `myTable` (
  `myTableId` int(11) NOT NULL AUTO_INCREMENT,
  `latLong` point NOT NULL,
  `createdAt` datetime DEFAULT NULL,
  `updatedAt` datetime DEFAULT NULL,
  PRIMARY KEY (`myTableId`),
  SPATIAL KEY `point_storePoint_spatial_idx` (`latLong`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

我收到:

0 row(s) affected, 1 warning(s): 1266 Using storage engine InnoDB for table 'myTable' Records: 0  Duplicates: 0  Warnings: 1

我应该更改什么才能创建所需的 table? 预先感谢您的回复。

Aurora 不支持 MyISAM。如果您绝对必须拥有 MyISAM,您可以尝试 MySQL RDS,但应该注意这可能会影响数据恢复、时间点恢复等可用功能。

您可以使用默认 (InnoDB) 引擎在 Aurora 中创建空间索引。

编辑:https://aws.amazon.com/blogs/database/amazon-aurora-under-the-hood-indexing-geospatial-data-using-z-order-curves/ 上有一篇讨论极光地理空间索引的好文章,声称其实施的性能比 MySQL 好 10 倍。

问:"MySQL compatible"是什么意思?

这意味着您今天已经用于 MySQL 数据库的大部分代码、应用程序、驱动程序和工具都可以与 Aurora 一起使用,只需很少或无需更改。 Amazon Aurora 数据库引擎设计为使用 InnoDB 存储引擎与 MySQL 5.6 兼容。 Amazon Aurora 不提供某些 MySQL 功能,例如 MyISAM 存储引擎。

有关详细信息,请阅读 Aurora 常见问题解答: https://aws.amazon.com/rds/aurora/faqs/