电脑技术学习

DvBBS 7.x sql到Discuz!5.0图文转换教程

dn001

注:本教程以本地数据转换为演示,服务器上的转换方法类似。

一、;转换前的准备
1、;请下载对应版本的最新转换程序到本地或服务器
最新的DvBBS sql版到Discuz!的转换程序为:动网DvBBS 7.1.0 SQL => Discuz!5.0.0 转换程序
下载地址为:http://www.discuz.net/thread-477133-1-1.html
下载转换程序到本地并解压缩后打开可以看到有五个文件,如图1所示:

其中:convertinc -文件夹里面是转换所包含的库文件;
dv710sql-dz500.php -文件是用于转换的转换程序;
logging.php -文件是为了保证动网论坛老用户可以正常登录的文件;
转换说明.txt -文件是转换说明及方法;
更新记录.txt -文件是对以前转换程序的修正说明。

2、请确认您已经成功安装了 Discuz!5.0.0
我们已经在本地安装好Discuz!5.0.0,如图2所示:

本机转换推荐使用Discuz!EXP(Discuz!论坛环境和Discuz!论坛一键安装)
下载地址:http://www.discuz.net/thread-223885-1-1.html

手动Discuz!环境搭建教程:http://www.discuz.net/viewthread.php?tid=378804
Discuz!5.0安装教程:http://www.discuz.net/thread-428312-1-1.html

3、将 .sql 后缀的动网sql备份数据导入SQL Server Enterprise Manager(SQL Server企业管理器)
1)打开企业管理器,如图3所示:

2)新建个数据库,本演示新建数据库dvbbs7,如图4,5所示:

在“名称”处填入新建数据库的名称dvbbs7,点“确定”。

3)开始还原数据库
右键新建的数据库dvbbs7“所有任务-还原数据库”,如图6所示:

由上面的操作进入下面的界面,如图7所示:

选择“从设备(M)”进入如图8所示的界面:

点击“选择设备(E)” 进入如图9所示的界面:

点击“添加(A)”进入如图10所示的界面:

在上图中填写或浏览您的备份数据,即浏览其存放路径,然后连续点“确定”,则数据开始还原,如图11所示:

还原完毕,点击“确定”即可,如图12所示:

4)修改MSSQL 数据库的字段类型
如图13所示打开数据库,点击其“表”:

将其用户表(Dv_User)、板块表(Dv_Board)、主题表(Dv_Topic)、帖子表(Dv_bbs1,bbs2,bbs3)、附件表(Dv_Upfile)、短消息表(Dv_Message)、好友表(Dv_Friend)、管理员表(Dv_Admin)字段类型为 nText 的改为 Text 类型。
下面以修改 Dv_User 表的字段类型为例做演示。
右键 Dv_User 表,点“设计表”,如图14所示:

由上面的操作进入下面的界面,如图15所示:

将上图中红框里的“数据类型”这一项的所有字段类型为 nText 的改为 Text 类型,然后关闭上面的界面,弹出一个如图16所示的提示框,选择“是”即可,后面如果还有警告,确定即可。如果您的数据量很大,这里进行这样的修改操作后保存时间会比较长,请耐心等待!

按照同样的方法将板块表(Dv_Board)、主题表(Dv_Topic)、帖子表(Dv_bbs1,bbs2,bbs3)、附件表(Dv_Upfile)、短消息表(Dv_Message)、好友表(Dv_Friend)、管理员表(Dv_Admin)字段类型为 nText 的都改为 Text 类型。

注:如果您是在运行动网论坛的服务器上直接转换,不需要进行上面的还原数据库这一项,但是修改字段属性这一步必须操作。


二、转换详细步骤

1、修改 convertinc/config.php 文件,仔细配置转换程序需要的参数
其中需要注意以下几点:

$ms_dbhost;=;'localhost';
mssql 主机地址,如:127.0.0.1,一般为 localhost

$ms_dbuser;=;'sa';
mssql 用户名,这个是安装SQL Server的时候设置的。

$ms_dbpw;=;'123456';;
mssql 密码,这个也是安装SQL Server的时候设置的。

$source_dbname;=;'dvbbs7';;;;
mssql 数据库名,也就是前面在SQL Server中新建的数据库名,本演示为dvbbs7

$source_tablepre;=;'dv_';
dvbbs 数据表前缀,如果您没有做过修改,默认为“dv_”,做过修改请填写您修改过的。

$dv_posttbl;=;'Dv_bbs1';
dvbbs 帖子表,多个表之间用半角逗号,隔开,如:Dv_bbs1,Dv_bbs2,Dv_bbs3,不知道这个值可以在SQL Server的企业管理器中打开表确认一下。

$dbhost;=; 'localhost'
MySQL 数据库服务器,如:127.0.0.1,一般为 localhost

$dbport; =; '3306';;
MySQL 数据库服务器端口号,一般为 3306,Discuz!EXP默认为6033

$dbuser; =; 'root';;
MySQL 数据库用户名

$dbpw; = ;'';;
MySQL 数据库密码

$discuz_dbname;=;'discuz';
Discuz!5.0 数据库名,也就是您安装好用于转换的Discuz!5.0论坛的数据库名称。

$discuz_tablepre;=;'cdb_';;
Discuz! 数据表前缀 默认为:cdb,如果您安装Discuz!的时候做过修改请填写您修改过的。

$discuz_charset;=;'gbk';
数据库字符集,如果您的 MySQL 为 4.1 以上版本 请根据您的 Discuz! 数据库字符集进行设置,可以根据您Discuz!论坛的config.inc.php文件中的dbcharset进行填写。

$rpp;;=;'3000';
每次需要转换的数据量,如果您的服务器比较慢,请将这个值调小,当然如果您的服务器性能很好,您可以将这个值调大到6000,甚至10000

其他参数默认即可!

2、将转换程序 dv710sql-dz500.php 和 convertinc 目录及其下所有文件置于通过 web 可以访问的目录下(本教程制作演示将转换程序置于论坛根目录下),并保持dv7xacc-dz500.php和convertinc目录结构不变,在浏览器中运行 dv7xacc-dz500.php 准备开始转换,具体看图17所示:

点击“开始完全转换”,进入如图18所示的转换页面:

(1)正常情况下,转换过程是全自动的,您无需干预,请坐下来喝杯茶,静静等待出现转换完成的提示;
 (2)如果转换过程中程序终止运行,请根据出错提示信息进行调整,然后刷新页面继续进行转换;
 (3)转换所需时间取决于您的数据量大小、数据结构的标准与否、转换程序所在平台的性能、网络状况等因素。
转换完毕后进入如图19所示页面:

点击“查看转换结果分析报告report.htm”,可以查看本次转换的成功率,如图20所示:

回到论坛首页看转换后的效果吧!如图21所示:

三、转换后的一些善后操作

1. 查看转换结果分析报告:report.htm ;(图20所示)

2. 请用您的管理员帐号登录 Discuz! 论坛后台执行更新论坛统计、更新缓存操作;
(如果您不是为自己转换论坛,不清除原论坛管理员的帐号密码,您可以进入 phpmyadmin 修改管理员密码,打开论坛数据库,打开 cdb_members 表,浏览,找到 adminid 和 groupid 都等于 1 的用户即管理员,修改密码,函数 MD5 加密,执行,此时管理员 admin 的密码被修改成你输入的密码。)
添加和修改管理员帐号密码的方法:http://www.discuz.net/thread-378404-1-1.html

自此,基本数据的转换完毕!下面简单介绍一下数据备份及导入服务器的步骤!

3. 进入论坛后台,备份数据,用于导入服务器;
注:数据的备份和导入方法参考下面的教程:
论坛搬家视频教程:http://www.discuz.net/viewthread.php?tid=384782
论坛后台备份完全规范:http://www.discuz.net/thread-505428-1-1.html

4. 在服务器端全新安装 Discuz!5.0.0 论坛,并保证所使用的字符集与转换中设置的 $discuz_charset 一致,登录 Discuz! 后台,将备份好的数据导入;

5.请将 dvbbs 的头像目录 images/userface 更名为 dvbbs ,并将该目录及其下所有文件移至 Discuz! 的头像目录 images/avatars 下;

6.请将 dvbbs 的用户自定义头像目录 UploadFace 更名为 dvbbs ,并将该目录及其下所有文件移至 Discuz! 的自定义头像目录 customavatars 下;

7.请将 dvbbs 的附件目录 UploadFile 更名为 dvbbs ,并将该目录及其下所有文件移至 Discuz! 的附件目录 attachments 下;

8.请用我们给您的 logging.php 覆盖 Discuz! 论坛程序中的 logging.php,这样老用户才可以正常登录;

9.请用您的管理员帐号登录 Discuz! 论坛后台执行更新论坛统计、更新缓存操作;

10.确认成功转换后请删除转换程序 dv710sql-dz500.php ,删除 convertinc 目录及其下所有文件。


技术支持:
 ; Discuz! 手握手互助转换升级活动火热进行中,即刻加入,Discuz! 志愿者将提供给您免费的数据转换服务:http://www.discuz.net/sowoso