免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2840 | 回复: 0
打印 上一主题 下一主题

使用iconv.exe转码工具升级数据库使用心得 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-12-09 16:30 |只看该作者 |倒序浏览


**使用iconv.exe转码工具升级数据库使用心得:
最近帮别人重新搞PHP后台的程序,需求方要求保留原MySQL数据库资料,因为原来MySQL数据库字符集为latin1格式,前在页面为Big5码,在使用上存在些问题,因此打算将数据库字符集改为Big5或Utf8格式。
1.      在MySQL中以原数据库字符集导出数据库结构及数据(root为mysql根用户,密码为123)

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

2.      使用Iconv将mpeghkdb.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

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

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

截图:




本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/23633/showart_212605.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP