MySQL Dump - 如何在转储时禁用lowercase_table_names,无需访问变量

时间:2015-12-12 08:30:42

标签: mysql mysqldump

有没有办法在转储时禁用此变量,而无法访问此变量? (例如:具有只读访问权限的AWS实例)

有两个名称为fooFOO的表正在创建问题mysqldump: Got error: 1066: Not unique table/alias: 'foo

2 个答案:

答案 0 :(得分:0)

你没有在linux mysql下找到表名,因为它的默认值是区分大小写的。对于Windows,它不区分大小写。

我无法猜测忽略区分大小写是否适合您。但你可以在my.conf中添加一行。即使linux中的mysql不区分大小写。

mysqlserver:~# vi /etc/mysql/my.cnf
...
[mysqld]
lower_case_table_names = 1

另外,根据表的命名约定,mysql表名必须是小写的。

http://www.toadworld.com/platforms/mysql/w/wiki/6103.naming-conventions

答案 1 :(得分:0)

我是通过逐个转储每个表来实现的。很奇怪,但有帮助。谢谢@arkascha建议。