1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

共享:从Discuz5直接转换到vbb3.6.4

本帖由 xinli_zhao2007-04-04 发布。版面名称:源码讨论

  1. xinli_zhao

    xinli_zhao Member

    注册:
    2006-08-31
    帖子:
    201
    赞:
    1
    可以平滑转换的数据有:

    1、用户
    2、同名管理员账号合并
    3、用户组
    4、版面
    5、主题
    6、帖子
    7、悄悄话
    8、附件
    9、表情

    目前除了投票系统之外,论坛的基本功能数据都可以从 Discuz 顺利转换至 vBulletin 3.6。
    本来是要把转换过程中的词语全部汉化以后再发布,但是发现语言文件似乎有些问题,所有先发布英文版本并做转换说明。
    等语言文件翻译完成测试无误后再补充中文汉化版。

    安装步骤说明:

    1、Discuz 4.1 与 5.0 如果使用了 UTF8 编码,可以直接进行第3步。如果使用的是 GB 编码请先执行第2步。

    2、使用附件中ConvertZ8.02 中文 Big5/GBK/Unicode/UTF8 内码转换器
    2.1使用ConvertZ不需要iconv函数,在本机就可以了。你需要将DZ数据库导出到sql文件,然后将sql文件采用转换器转到UTF8简体格式,选择好输出的位置,转换后就得到你的UTF数据库了
    2.2最好采用同一个数据库导入导出程序,以免出错。并且强烈建议采用MYSQL4.1,我采用mysql4.0.25,附件出错,我在本地的套件为easyphp 1.8
    2.3我采用的数据库导入导出的工具为phpMyBackupPro,这是个开源的数据库导入导出工具,很好用。注意导入导出的数据库的名字要一样,否则在导入时,phpMyBackupPro会把不同名的数据库删除。这个软件是开源的,直接去官方下载即可

    3、将附件解压缩后,把 impex 目录 和 includes 目录上传至 vBulleitn 根目录。

    4、打开 impex 目录中的 ImpExConfig.php 文件,配置 vBulletin 数据库和 Discuz 数据库的名称、用户名、密码、表前缀等信息后保存。

    5、进入 vBulletin 后台,左侧功能管理列表会出现“导入选项”,点击“导入”后如果出现要求输入客户号的页面,默认留空,转换类型一律使用 Discuz 5.0 模式。选择完毕后点击进入转换导入步骤列表。

    6、导入模块列表从上至下依次为:

    001 检测和更新数据库
    002 合并用户
    003 导入用户组
    004 导入用户
    005 导入讨论区
    006 导入主题
    007 导入帖子
    008 导入投票
    009 导入悄悄话
    010 导入附件
    011 导入表情

    导入顺序从 001 开始,不可直接执行后面的步骤,因为数据转换前后有依赖关系。

    除了008以外全部执行完数据转换导入后重点看以下整理步骤。

    1、进入讨论区管理,点击“保存显示顺序”。
    2、进入“维护” - “执行更新计数器”,把所有信息该重建的重建,该重新统计的重新统计。
    3、在 vBulletin 使用的数据库中执行下列语句:

    代码
    PHP 代码:
    update forum set parentid = -1 where parentid =0


    完成这三步以后,主题就会正常在各版面内显示了。当然转换过来以后讨论区分类会比较乱,手动调整一下即可。

    4、进入用户组管理,会发现多出好多自定义用户组,把这些自定义用户组中的用户移动到 vBulleitn 默认的用户组中,并设置好权限,悄悄话就正常显示了。也可以直接删除这些自定义用户组,自定义用户组中的的用户在删除后会被自动归类到 vBulletin 的注册会员用户组中,这样就完成了用户组的整理。

    5、关于附件:导入附件的时候无论 vBulletin 的附件是存在数据库还是文件夹目录中都可以。(注意:导入步骤中要求填写的是 Discuz 论坛的附件目录路径,不要错填成 vBulletin 的。)

    附:我的转换结果
    1.贴子及会员附件等全部转换成功,但是投票及会员的积分没有了,会员发贴会是对的。
    2.如果不执行update forum set parentid = -1 where parentid =0,在讨论区内没有显示论坛的父目录,在执行了这个SQL语句,在讨论区内就多出来一倍的讨论区,需要把多余的讨论删除,删除里要看清楚,不要将有用的讨论区删除
    3.讨论区的排序方式及显示的内容设置,均需要重新设置
    4.所有会员的时区均设置为英国的时间,需要在数据库中所有会员的时区字段更改为8,即user表中的timezoneoffset字段,全部更改为8
    5.所有会员的编辑器设置均为无工具栏最简的编辑器,需将会员的编辑器字段更改为1,即user表中的showvbcode字段值设定为1(如果想采用所见即所得的编辑器,需要将字段设定为2,但不推荐2,推荐为1.VBB默认的也是1)
    6.强烈建议在转换前,将VBB的附件存储位置改成在空间中存放,否则附件转换很难成功。
    7.将所有的会员的时区字段及编辑器字段更改,还是在数据库中采用update命令,一次性全部转换
    8.在第二步合并会员时,如果在你的VBB论坛中已经有会员,如果你想让你导入的会员与VBB中的同名会员资料一致,就需要在第二次中设置好会员同步了,否则直接默认就可以了。
    9.附件转换时,不要设置的一次性数值太大,我在转换时用250和100均没有成功,后来用50成功了。并且在附件转换时,如果显示执行中断了,要等一会员再执行导入,再一次占导入菜单时,会从上次中断的地方重新开始。如果你在程序中断后马上点击导入菜单,重新来过,会形成很多冗余的数据,例如原来一贴子的附件为1个,重新导入过快的话,就变成2个或者3个了。

    建议你在导入时,将所有的数据放在本机环境,导入成功后再上传到服务器中,在“维护”--“执行更新计数器”--“重建搜索索引”,我在本机没有成功,将所有的数据上传到服务器后,重新索引及图片缩略图成功了

    我已经成功从DZ5直接转到VBB3.6.4,希望你也能成功

    附件中为用到的三个程序,程序套件自己选择吧。
    并非我首创,呵呵,只是共享,原来推荐采用JEOY的TOUTF8来转换编码,我改成了convertz,加进去了我的转换经验。

    这里面主要内容转贴于thforum论坛,我只是将我部分内容改动了一下,使其更方便使用
     
  2. wuhao

    wuhao New Member

    注册:
    2006-05-23
    帖子:
    265
    赞:
    0
    有到最新版本的么?
     
  3. wuhao

    wuhao New Member

    注册:
    2006-05-23
    帖子:
    265
    赞:
    0
    5.0 for 3.6.5?有无?中文的
     
  4. xinli_zhao

    xinli_zhao Member

    注册:
    2006-08-31
    帖子:
    201
    赞:
    1
    3.6.4和3.6.5是一样的东西,版本相差没什么的

    DZ5.5的,vbulletin官方有最新的IMPEX,不过我没有
     
  5. dony945

    dony945 New Member

    注册:
    2006-02-22
    帖子:
    105
    赞:
    0
    有1.78的,支持5.5
     
  6. zmnet

    zmnet Well-Known Member

    注册:
    2006-05-03
    帖子:
    7,809
    赞:
    62
    没钱
     
  7. molvip

    molvip New Member

    注册:
    2006-03-15
    帖子:
    8
    赞:
    0
    怎么没有附件啊
     
  8. xinli_zhao

    xinli_zhao Member

    注册:
    2006-08-31
    帖子:
    201
    赞:
    1
    需要下载的文件不知道为什么没有了。如果需要下载,就到树新博客去下载吧 http://zhcn.org