我现在的mysql 是windows的版本,是4的版本
现在要做迁移,新装的是5以上的版本,在windows下面 我用mysqldump 将数据导出,因为老的数据库是latin1的字符集,所以导出的时候设置
latin1的字符,导为一个文件后,我打开看来后,中文显示正确,
但是我ftp上传到linux下面,已经将数据库建立,并将正确各个表的字符集格式设置了utf8,导入后中文全是乱码,用的是mysql的命令导入的我重建表,将表的格式设置为latin1也不行,网上找了很多资料,都没有效果。导出的时候应该是正确的,但是导入到新版本后 , 就怎么也弄不回来了,请教各位大侠,该怎么弄?
谢谢
现在要做迁移,新装的是5以上的版本,在windows下面 我用mysqldump 将数据导出,因为老的数据库是latin1的字符集,所以导出的时候设置
latin1的字符,导为一个文件后,我打开看来后,中文显示正确,
但是我ftp上传到linux下面,已经将数据库建立,并将正确各个表的字符集格式设置了utf8,导入后中文全是乱码,用的是mysql的命令导入的我重建表,将表的格式设置为latin1也不行,网上找了很多资料,都没有效果。导出的时候应该是正确的,但是导入到新版本后 , 就怎么也弄不回来了,请教各位大侠,该怎么弄?
谢谢
其次可以使用第三方工具倒数据,例如MySQLCC
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
都搞成utf8然后导出mysqldump 出来的文件,转码为utf8
例如这个命令: iconv -t utf-8 -f gb2312 -c old.sql > new.sql
然后导入即可
但是查看的时候,也要将客服端工具设置utf8编码也可以参考http://imysql.cn/?q=node/20
[mysqld]
default-character-set=utf8
[client]
default-character-set=utf8