最近由于论坛帐号整合需要,不得不把原蓝卡论坛的GBK编码转换为UTF-8,由于Discuz官方并没有提供转换工具,网上也没有什么靠谱的教程,而且论坛中数据较多,可闪失不得,这不禁让我十分为难。。
我先尝试了网上比较流行的一种利用Discuz数据库功能进行数据库备份、恢复达到转换目的的方法,可是在我按照教程进行操作后,发现虽然前台的帖子、用户等数据全部恢复,但是后台的数据全部丢失!且还有部分乱码的情况出现,要重新设置那么多后台选项,我才不干呢!于是,我便开始琢磨另一种转换方法,当我看到另一篇教程,让我们用文本编辑工具将DZ程序文件手动转换编码然后再转换数据库编码达到转换目的的方法后(几乎不能成功),我突然灵机一动,想到了!这种方法成功率非常高!下面便是详细教程:
备份
不管怎么说,备份都是必须的!
全新安装Discuz!
首先,我们要去Discuz官网下载UTF-8版本的Discuz(必须要与GBK论坛同版本),并全新安装它到服务器上,最好使用一个单独的子域名,和一个单独的数据库,方便后面操作,注意:数据库前缀最好与GBK论坛一样,当然,如果你无法使用更多的数据库,只能将GBK与UTF安装到同一数据库中,那又另当别论!(后面的操作都是在两个论坛安装在不同数据库的基础上进行的,若两论坛安装在同一数据库内,某些操作可能会出现问题,请务必备份!)
转换数据库编码
转换数据库编码的最好方法便是导入导出,首先在Phpmyadmin内将G