tle*_*man 3 mysql encoding mysqldump utf-8 character-encoding
我正在尝试将远程计算机上的 MySQL 数据库中的表复制到本地计算机上的另一个 MySQL 数据库中。我注意到在将转储导入到我的本地机器后,有像 ’ 这样的字符而不是单引号。
我认为这是一个编码问题,所以我进入了两个数据库并运行了show create table posts
,在两个数据库接近尾声时,我看到了CHARSET=utf8
. 另外,我file -i
在将转储文件scp
导入本地机器之前和之后都运行了它,它们都是 utf8。
但是,当我导入这个文件时,我之前得到了这个:
attendees—policy makers,
Run Code Online (Sandbox Code Playgroud)
之后:
attendees—policy makers,
Run Code Online (Sandbox Code Playgroud)
我不确定为什么会这样,一切都使用 utf8,我错过了什么?
编辑:我在mysql Ver 14.12 Distrib 5.0.75, for debian-linux-gnu (x86_64)
远程和mysql Ver 14.14 Distrib 5.5.25a, for osx10.7 (i386)
本地使用。
在两个系统上,您都必须检查您的连接编码是否正确:
SHOW VARIABLES LIKE 'character_set_%'
Run Code Online (Sandbox Code Playgroud)
通常看到这样的字符是双重编码的结果。确保您可以将连接和客户端编码匹配为完全相同。有许多命令行选项可以促进这一点,或者如果您使用驱动程序或客户端,其中的某些内容可以对其进行调整。
归档时间: |
|
查看次数: |
770 次 |
最近记录: |