在 aws RDS 上,我有一个 mysql8.0.16
实例正在运行。我现在的问题是,INFORMATION_SCHEMA.ST_SPATIAL_REFERENCE_SYSTEMS
桌子是空的。
这对我来说是个问题,因为我想创建下表:
CREATE TABLE my_table
(
...
coordinates POINT NOT NULL SRID 4326
...
);
但这会导致显示错误消息There's no spatial reference system with SRID 4326
。
这里发生了什么?为什么桌子是空的?我希望它至少包含一个SRID 4326
.
RDS 上的新 MySQL v8.0.16 映像(在撰写本文时)缺少除
SRID 0
.作为一种解决方法,您可以使用 v8.0.15 创建一个新实例,然后执行次要升级(需要重新启动)。
...返回:
我在 RDS 上使用 MySQL 8.0.16 时也遇到了这个问题。在您自己的服务器上运行的 MySQL 实例上,您可以自己添加缺少的参考系统,但这需要 SUPER 访问权限,而 RDS 不提供此权限。
我最终通过 AWS 控制台联系了 AWS 支持,他们能够为我添加缺少的 SRID。这比尝试创建新实例、升级、复制数据以及更新我的应用程序以指向新数据库要简单得多。我有一个开发人员级别的支持计划,所以他们可能不会为每个人都这样做。
我从 AWS 支持部门得到确认,这确实是一个问题。
这是来自 AWS 代表的解决方法(也如 kwalski 所述):