由于bbsxp2008用的是SQLServer数据库,而discuz7.2用的是mysql数据库,因此转换过程主要就是数据转换过程。
需要准备的工具及环境:
- Discuz 7.2程序(官方下载地址:http://www.comsenz.com/downloads/install/discuz)
- PHP + MySQL的环境(window下:http://www.crsky.com/soft/10723.html,linux下的安装Google一下)
- SQLServer2005(数据库安装程序下载地址,数据库可视化管理工具(SSMSE),先装数据库,再装管理工具)
- XConvert(下载地址:http://www.discuz.net/thread-1010799-1-1.html)
好,开始了!
- 安装SQLServer2005后,将原来bbsxp使用的数据库文件附加到SQLServer。
- 安装Discuz 7.2。
- 将xconvert部署到php环境下,并通过浏览器访问xconvert。
- 选择bbsxp2007sql – 72uc
- 在弹出的帮助信息中,有这么一条“转换前:需要将以下表中的ntext字段改为text类型字段: sitesettings, users, 所有Posts表, messages, Affiche”。进入SQLServer管理工具,更改这些表的表结构修改数据类型,但如果数据量较大,会发生超时问题,解决办法:SQLServer2005修改表结构数据类型超时的解决方法
- 开始填写配置信息
- 点击“保存配置”后,会提示配置信息写入完成。如果提示“MS SQL Server 数据库连接错误!请检查数据库主机变量设置是否正确!!!”,则仔细检查SQLServer的服务器名、用户名、密码、数据库名等是否正确。注:服务器名怎么找?打开SQLServer可视化管理工具时,不是会首先弹出登录窗口吗,这个窗口里面有一个选择项就是“服务器名称”。
- Groups,Forums,ForumPermissions,Threads都有大于65535的ForumID和GroupID,进行对10000的取余运算。并将这些表中的ntext数据类型全部改为text。
- 现在最关键的就是Posts表数据类型由ntext转换为text的问题。首先