我在Linux机器上从MYSQL数据库导出,但是当在Windows上将该数据库导入MYSQL时,所有以驼峰为基础的表名现在都是小写的。 sql转储中有正确的大小写但是通过phpmyadmin接口导入以删除这些。
如何导入并保留案例?
答案 0 :(得分:10)
mysql有一个设置允许在Windows中区分大小写。您需要编辑my.cnf
文件并更改设置:
lower_case_table_names=2
然后重启mysql。
否则,这可能是phpmyadmin更改案例的情况,它将查询传递给服务器而不是linux-to-windows问题。您是否尝试使用其他mysql管理器(如SQLyog)导入sql转储? (工具 - >从SQL转储还原...)
答案 1 :(得分:2)
可能值得阅读MySQL参考手册中的以下页面:http://dev.mysql.com/doc/refman/5.5/en/identifier-case-sensitivity.html
基于此,我认为你需要设置为0而不是2,这将确保使用与DDL中定义的相同的情况来存储模式。
lower_case_table_names=0
答案 2 :(得分:0)
转到C:\ ProgramData \ MySQL \ MySQL Server x.x.x, 找到my.ini文件,在底部添加lower_case_table_names = 2并重新启动Server。
在Unix上使用lower_case_table_names = 0,在Windows上使用lower_case_table_names = 2.