MySQL的默认编码是latin1,除非手动强制指定编码,否则默认创建的数据库编码都是使用MySQL默认的。当初Discuz v2.5时并没有考虑这些问题导致以后的升级出现了论坛显示乱码的现象,必须手工修改配置文件指定编码为gb2312才可,在网上看了很多文章都没有详细的讲述,并且都说很危险也很麻烦!后来亲身实践了一下发现还是相对简单的,下面将步骤分享出来!

1、导出数据库并强制为GBK

mysqldump -u root -p --default-character-set=latin1 --set-charset=gbk --skip-opt databasename > databasename.sql

注:--default-characte-set ,以前数据库的编码类型,默认都是latin1
      --set-charset ,导出数据库的编码类型,可以指定为gbk、uft8或big5

2、创建一个编码方式为gbk的数据库

CREATE DATABASE `newdatagbk` DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;

3、将之前导出的数据库再导入到这个gbk编码的新数据库中

mysql -u root -p --default-character-set=gbk -f newdatagbk < databasename.sql

/-------- 完成

技术备忘 | 评论(0) | 引用(6366) | 阅读(7021)
发表评论
昵称 [注册]
密码 游客无需密码
网址
电邮
打开HTML 打开UBB 打开表情 隐藏 记住我