13

我从 linux 机器上的 MYSQL 数据库导出,但是当将该数据库导入 Windows 上的 MYSQL 时,所有驼峰式大小写的表名现在都是小写的。sql 转储中包含正确的大小写,但通过 phpmyadmin 接缝导入以删除这些。

如何导入并保留案例?

4

3 回答 3

14

mysql 有一个设置允许在 Windows 中区分大小写。您需要编辑my.cnf文件并更改设置:

lower_case_table_names=2

然后重启mysql。

否则,这可能是 phpmyadmin 在将查询传递到服务器的方式中更改大小写的情况,而不是 linux 到 Windows 的问题。您是否尝试过使用另一个 mysql 管理器(例如SQLyog )导入 sql 转储?(工具 -> 从 SQL 转储恢复...)

于 2010-05-19T23:21:29.927 回答
2

可能值得阅读 MySQL 参考手册中的以下页面:http: //dev.mysql.com/doc/refman/5.5/en/identifier-case-sensitive.html

基于此,我认为您需要设置为 0,而不是 2,这将确保使用 DDL 中定义的相同大小写存储模式。

lower_case_table_names=0
于 2010-05-20T10:28:11.043 回答
1

转到 C:\ProgramData\MySQL\MySQL Server xxx,找到 my.ini 文件在底部添加 lower_case_table_names=2 并重新启动服务器。

在 Unix 上使用 lower_case_table_names=0,在 Windows 上使用 lower_case_table_names=2。

于 2018-04-18T12:42:16.613 回答