上次将服务器系统从rh7.3更改为ubuntu,并将Mysql3.23野蛮地升级到5.1。 因为如果有数据库的一部分,我不想打开那个可爱的柠檬文件进行编辑。 但是,如果将想要的数据文件复制到新目录中,就会发现竟然可以使用,不再对其进行管理。
但是,在phpMyadmin中发生了乱码。 这是不行的。 很多数据我不擅长开发后台,所以我用phpMyadmin管理数据。
我在网上找了一下,知道什么是有字符集的东东。 网络上常用的三步法,我怎么也做不到先用latin1导出,再用iconv转换,再用utf8导入。 还不知道是ubuntu的错,还是怎么回事。 因为不知道哪个前辈有经验,所以请给我提示。
最后,采用了将小数据库升级到utf8的方法。
mysqldump-- default-character-set=latin1 woyi|sed ' s/latin1/utf8/' woyi.SQL
将该sql内容复制到phpMyAdmin的sql执行窗口中并执行。 谢天谢地,我终于在phpMyAdmin上看到了不乱码。
在朋友的网站上添加论坛。 论坛的所有PHP代码都使用GBK或UTF8字符集。 原始数据库的LATIN1字符集已升级到UTF8的问题,今天只能再试一次。 我今天不想对付棘手的人,但这个问题真的解决了。
1 .首先从sm18900库导出表:
mysqldump-- default-character-set=latin1 sm 18900 product _ kind product _ kind.0
使用UltraEdit32修改product_kind.0文件
在文件开头的注释之后,在SQL语句之前,键入以下两个语句
我把这两个句子放在文件的开头,不能竞争吗?
请查看导出的sql文件的第10行。 这是与版本相应的执行命令。
//! 40101 SET NAMES latin1 */;
set names utf8;
use pk0598;
将defaultcharset=latin1设置为utf8的
在菜单的“转换”下,将文件从ASC转换为UTF8
将文件重新上传到服务器,并将文件另存为product_kind.1。
我用二进制方式上传了。 不是交流方式
3 .导入到新库
mysql的大多数表,我就是这样操作成功的。 但是,有些表格在导入时,语法错了,或者提示了哪个段落错了,经过检查,
INSERT语句中有一个没有引号的字段值,是否只有一个? 下一个字段开始。 我不知道是因为原来的表,还是从哪里来的,总之,我只能用UltraEdit用手找(,(),) ),代替,然后通过了。
阅读(1845 ) |评论(0) |转发)0|