我必须将MySQL备份从Windows服务器导入到Linux服务器。由于在以前的数据库中,表名都是大小写的,所以我现在遇到了问题,因为在当前的服务器(Linux)中,MySQL的模式是不区分大小写的。另外,我不能更改它的设置,因为它是一个共享主机,我无法访问它。
如何使用PHP中的运行时脚本强制MySQL在不区分大小写的模式下运行?
发布于 2012-11-11 17:08:10
我认为你可以使用下面的代码来重命名或者动态使用:
select concat('rename table ', table_name, ' to ' , lower(table_name) , ';') from information_schema.tables where table_schema = 'your_schema_name';
SELECT * from lower(table_name) ... 发布于 2012-11-11 16:48:01
解决这个问题实际上非常简单。您所需要做的就是编辑my.cnf文件并设置/添加以下条目。对于我的默认mysql安装,"my.cnf“位于"c:\program files\mysql\mysql serverversion\my.cnf”
#Ensure that table names are stored case sensitive and that queries are case sensitive when naming a table
lower_case_table_names=0您可以将此路径更改为gnu/linux
https://stackoverflow.com/questions/13329677
复制相似问题