我之前的数据库编码是默认的LATIN1,但是想转换为UTF8,baidu、google了半天,方法有很多,可是许多方法要么就是特别麻烦,要么就是看不懂。
查了半天,也测试了半天,终于搞定了,下面将步骤写一下
测试环境:WINDOW XP
Mysql版本:5.0
1、用mysqldump将latin1编码的数据库导出成为sql文件。
C:/>d:
D:/>cd D:/Program Files/MySQL/MySQL Server 5.0/bin
D:/Program Files/MySQL/MySQL Server 5.0/bin>mysqldump -uroot -p --quick --compatible=mysql40 --default-character-set=latin1 --extended-insert=FALSE test > d:/test.sql
test是你想导出数据的数据库名,d:/是路径,设置成你希望的路径就行了,test..sql是随意命名的文件,名称随意,只要有.sql后缀名就行了。
程序会提示你输入root的用户密码(如果存在密码的话),输入,程序开始导出。
重点:--compatible=mysql40 --default-character-set=latin1,当指定了--compatible=mysql40参数后,可以指定数据库编码
2、第二步,通过MySQL-Front建立一个新库,库名:test,采集字符集设定为utf8-general-li
将导出的test.sql转换为UTF-8编码,可以使用UltraEdit(文件--转换--ASCII到UTF8)。--好像XP下导出的test.sql默认编码是ASCII编码,所以需要转换,大家可以测试一下,看看是否不用转换也可以导入
3、将备份出来的sql文件导入新数据库。
D:/Program Files/MySQL/MySQL Server 5.0/bin>mysql -uroot -p --default-character-set=utf8 test < d:/test.sql
完成。。。
打开MySQL-Front,以UTF8编码登录,看看是不是可以看到可爱的汉字了。