MySQL在Linux和Linux之间的数据中获取未知字符Windows托管数据库

时间:2011-03-31 10:20:58

标签: mysql sql character-encoding mysqldump

我迷失了。我有一个我在线下工作的网站,然后我上传到实时服务器,将MySQL数据库导入到实时服务器,并在一般情况下生效。问题是当我从LIVE服务器导出数据库并导回到LOCAL服务器时,我的XHTML输出中出现了未知字符,中间有白色问号的黑色钻石,你知道那个。

我用于从LOCAL MySQL安装导出数据库的命令如下:

mysqldump --verbose -hlocalhost -uxxx -pxxx --databases xxx --add-drop-table --default-character-set UTF8 > somedir/xxx.sql

然后,当将该数据导入LIVE数据库时,我使用了一个简单的命令,如下所示:

mysql -hlocalhost -uxxx -pxxx somedatabase < xxx.sql

很好,一切都很好,数据已导入,网站上没有任何未知字符。但是,当我反向执行相同操作(使用与Windows中相同的命令在实时服务器上进行转储,使用相同的mysql命令在Windows中导入)时,就会出现所有未知字符。

这是一个整理问题吗?我使用了不正确的 - 默认字符集

我从来没有遇到过这种情况,我希望得到一些反馈,或者在正确的方向上轻推。


更新:我已完全删除了我的本地数据库,导出了整个实时数据库并导入。还是一样的错误:/这让我很生气!


非常感谢, 西蒙

2 个答案:

答案 0 :(得分:1)

尝试双方:

SET names UTF-8

可能默认值不同。

答案 1 :(得分:0)

我怀疑您的实际网站有不同的数据库架构,可能是latin1吗?