[英]lower_case_table_names setting in Amazon RDS
我们在Amazon RDS中有一个数据库实例,只有一个数据库。 (默认情况下,其lower_case_table_names = 0)。
现在我在同一个实例中创建了另一个DB。 对于新站点,由于区分大小写的表名,其给定表未找到错误。
所以我在RDS中为该实例更改了lower_case_table_names = 1(因为不允许2)。 新站点开始工作但旧站点未找到错误表。
有解决方案吗 我想设置lower_case_table_names = 1,因此新DB不会出现问题。
提前致谢!
我遇到了同样的问题,默认情况下,当您使用AWS RDS创建新的MySQL实例时,它将使用default-parameter-group,问题是您无法更改此默认参数组中的任何参数。 要更改参数值,您必须创建一个新参数组。 在这里你是如何做到的:
希望能帮助到你 :)
通过设置lower_case_table_names=1
配置后,尝试导出数据库并再次导入。
如果设置lower_case_table_names=1
参数,则DB将从该点开始将所有新创建的表名转换为小写。 在查找之前,它还会将所有数据库查询中的表名转换为小写。
但是,如果在启用参数之前已在DB中有一组表,则不会更改它们。 由于查询转换为小写,您的应用程序将告诉您“找不到表”,因为实际表是大写的,查找是小写的。
我可以通过以下步骤解决此问题。
这将在导入时将所有新表名转换为小写。 由于查找也以小写形式发生,因此不会有任何问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.