博客首页 注册 建议与交流 排行榜 加入友情链接
推荐 投诉 搜索: 帮助

bridge2006

天行健,君子以自强不息。
  bridge2006.cublog.cn

关于作者
姓名:bridge
职业:IT
年龄:28
位置:湖北
个性介绍:天行人健,君子以自强不息.
|| << >> ||
我的分类


使用iconv.exe转码工具升级数据库使用心得
 

**使用iconv.exe转码工具升级数据库使用心得:

最近帮别人重新搞PHP后台的程序,需求方要求保留原MySQL数据库资料,因为原来MySQL数据库字符集为latin1格式,前在页面为Big5码,在使用上存在些问题,因此打算将数据库字符集改为Big5Utf8格式。

1.      MySQL中以原数据库字符集导出数据库结构及数据(rootmysql根用户,密码为123)

 

mysql>mysqldump -uroot -p123  --skip-quote-names  --default-character-set=latin1 --comment=1 -B mpeghk >mpeghkdb.sql

 

2.      使用Iconvmpeghkdb.sql中的繁体汉字码,转换后打开new.sql会看到繁体字的政党显示,非乱码。

iconv -t utf-8 -f big5 -c mpeghkdb.sql > new.sql

此处不是:  iconv -t utf-8 -f latin1 -c mpeghkdb.sql > new.sql

 

3.修改new.sql,在前面加入Set names=’utf8’; 并且将Create database 后面的CHARACTER SET latin1 COLLATE latin1_swedish_ci; 改为CHARACTER SET utf8 COLLATE utf8_general_ci,如果没有就加上。

4.导入数据库

mysql> mysql –uroot –p123 < new.sql

 

至此升级成功,关键之处就在于修改建库文本为相应字符集,不要忘记加上set names ‘字符集如果要将数据库升级为Big5字符集,不需将步骤2,只在步骤3作相应的修改,将utf8改为big5, utf8_general_ci改为big5_chinese_ci,再执行步骤4即可。 但是在导成big5导入数据时可能会有非法字符至少导入不成功,可以将部分行注释掉或骈掉一些非法字符再导入,转成utf8格式产生此类问题较少,比较安全.

 

ICONV.exe下载地址:http://gnuwin32.sourceforge.net/

另外还有一些小工具也有如此强大的功能,我特荐使用ConvertZGB/BIG5/UTF-8 文件编码批量转换程序 工具,相当好用,可以至此人的博客下载。http://www.pc-soft.cn/blogview.asp?logID=6

截图:

 

发表于: 2006-12-09,修改于: 2006-12-09 16:30,已浏览656次,有评论0条 推荐 投诉


网友评论
 发表评论