无法使用“lower_case_table_names = 1”创建新的RDS MySQL数据库实例

问题描述 投票:2回答:2

我正在尝试使用“lower_case_table_names = 1”创建一个新的MySQL v8.0.11 RDS数据库实例。

数据库的创建被卡住了,在日志中我可以看到以下错误:

“服务器('1')和数据字典('0')的不同lower_case_table_names设置。”

有谁经历过这个?

请帮忙。

mysql database amazon-web-services instance amazon-rds
2个回答
1
投票

https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_lower_case_table_names

禁止使用lower_case_table_names设置启动服务器,该设置与初始化服务器时使用的设置不同。限制是必要的,因为各种数据字典表字段使用的排序规则基于初始化服务器时定义的设置,并且使用不同的设置重新启动服务器会引入关于如何排序和比较标识符的不一致性。

这是AWS关于支持此选项的问题。这取决于他们如何初始化RDS实例。我猜他们克隆了一个预先初始化的InnoDB表空间的图像,而不是初始化一个新的表空间。


0
投票

Amazon RDS支持定义数据库引擎设置的参数组。

MySQL 8的参数组包括lower_case_table_names的设置:

您应配置此参数组,然后使用参数组启动RDS集群。

见:Working with DB Parameter Groups - Amazon Relational Database Service

© www.soinside.com 2019 - 2024. All rights reserved.