首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将mysql转储从Linux导入Windows,并保留表名大小写

问将mysql转储从Linux导入Windows,并保留表名大小写
EN

Stack Overflow用户
提问于 2017-04-10 06:17:35
回答 1查看 656关注 0票数 1

我从Linux创建了一个MySQL转储。当我看到转储文件的内容表名大小写被保留时,但是当我将相同的转储导入到Windows框中时,它就失去了表名的情况。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-10 06:38:56

似乎您应该在Windows上设置lower_case_table_names=2 (默认情况下是1)。在本例中,表和数据库名称使用CREATE或CREATE语句中指定的字母存储在磁盘上,但MySQL在查找时将它们转换为小写。

详见:http://dev.mysql.com/doc/refman/5.0/en/identifier-case-sensitivity.html。

使用lower_case_table_names=1 on all systems。这样做的主要缺点是,当您使用显示表或显示数据库时,您看不到它们原来的字母大小写中的名称。 使用lower_case_table_names=0 on Unix和lower_case_table_names=2 on Windows。这保留了数据库和表名的字母大小写。这样做的缺点是,必须确保语句始终引用数据库和表名,并在Windows上使用正确的字母。如果将语句传输到Unix (其中的字母大小写很重要),则如果字母大小写不正确,它们就无法工作。 例外情况:如果您使用的是InnoDB表,并且试图避免这些数据传输问题,则应该将lower_case_table_names to 1 on all platforms设置为强制将名称转换为小写。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43316138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档