scribble

守望的麦子

About Projects Tool Guestbook

27 Nov 2007
Discuz!论坛“搬家”全攻略

论坛搬家主要有一下几个步骤

一、备份部分

1、备份数据库数据

这部比较关键,因为你论坛几乎所有的数据都在这个数据库里面,所以这个备份是必不可少的,下面详细说说备份方法。

第一种方法:也是最简单的备份方法就是利用后台的资料备份来备份,如果是转移空间建议在数据备份数据类型里面选择全部备份,还有一点要注意备份分卷的大小不要超过2048K,如果还是出现问题,请改变分卷的大小

采用这种方法备份的数据将自动保存在论坛的forumdata目录下,格式为:备份日期_任意代码.sql,备份好后把这些文件下载就完成第一种备份方法了。

优点:方便快捷,适用于数据比较小没有自行添加过数据表的用户
缺点:只能备份论坛默认的数据表,对于自定义的数据表不能备份

第二种方法:其实这种方法也很方便,而且备份的数据更加全,这个方法就是联系你的空间商让他帮你备份然后打包放到你的空间,你自己下载

优点:方便快捷能够备份全部数据,适用于自行添加过许多数据表的用户和数据量比较大的用户
缺点:只适用于收费的虚拟主机

第三种方法:这种方法只使用于独立主机或者用自己电脑做服务器的用户,就是找到mysql目录下的data目录,然后找到于你论坛数据库名称相对应的目录名称,例如:你的论坛数据库名称是bbs,那么你的数据就存放在mysql/data/bbs目录下,依此类推,你首先关闭mysql服务,然后把数据所在目录所有文件备份就完成论坛数据的备份了

优点:最为简单方便
缺点:局限性大,只适用于独立主机用户

2、论坛程序文件及其附件的备份

这个相对于数据库备份更加简单,只要把你论坛目录下的所有目录和文件下载或者拷贝到你要备份的地方就可以了,如果你没有对论坛程序和模板做过很大的改动,那么只要备份/wp-content/uploads/attachments(附件目录)和customavatars(用户自定义头像)目录就可以了,如果还需要备份模板那么还要加上一个templates目录就可以了。

二、数据及其程序文件恢复

1、数据库恢复

如果你是采用的第一种方法备份的目录,请先安装一个和你原来使用的论坛版本一致的论坛程序,那么直接把你备份的SQL文件上传到你新服务器的论坛的forumdata目录,然后用这个帖子http://www.discuz.net/viewthread.php?tid=126510里面那个恢复数据的工具恢复就可以了,那个工具的使用方法已经在那个工具里面写的很清楚了,如果还有问题请回帖说明,注意用那个文件恢复数据之后,请记得删除那个文件,以免造成安全问题

如果你是第二种方法备份的数据,那么你最好也找你的空间商帮你恢复数据,他们一般会让你把数据打包然后传到你的新服务器上,然后你装好论坛他们就可以帮你恢复了

如果是第三种备份方法那么和第二种类似,直接在你的mysql/data目录下建立一个文件夹,名称要和你的数据库名称一致,然后把你的备份文件拷贝到你新建的那个目录下就可以了,然后安装论坛配置好config.php文件就行了,如果你是准备把你的论坛搬到虚拟主机上,那么你可以把你的数据打包给你空间商,让他们帮你恢复,方法同第二种方法

2、论坛程序及其相关文件的恢复

如果你不需要原论坛的程序及其相关文件,那么你全新安装一个论坛然后用上面的数据恢复方法恢复数据就可以了。
如果你需要保存你原来论坛的程序及其相关文件,那么请先用FTP把你的论坛文件及其相关文件上传到你的新服务器上,配置好config.php文件,最后用上面所述的方法恢复数据就可以了

其实论坛搬家的方法还有很多,例如用phpmyadmin或者其他相关软件备份数据等等,在这里我就不一一阐述了,论坛搬家的首要要求就是细心,做好备份,如果大家对论坛搬家还有问题,可以在这里发贴说明,我们共同探讨:)

有的人用上面的方法搬家可能会出错的, 为什么呢?

错误出在数据库

我们用的是2.5F 不可能不装插件 很多插件升级了数据库 并且新建的表, 这些表是无法从DZ后台备份的 下面开始

1.备份数据库
现在的空间基本都有phpmyadmin, 首先进入phpmyadmin, 选择语言进入数据库, 全选, 导出, 如果你数据库比较庞大, 就一个表一个表的导出, 方便以后导入, 导出后存为 数据库.sql 文件

2.搬文件
好了, 连接FTP, 把所有文件DOWN下来, 到新空间上传

3.导数据到新空间
进入新空间的phpmyadmin, 如果数据库内有和论坛重叠的数据先删除, 然后用SQL导入
注:SQL导入不会覆盖所以必须先删除重跌数据
打开数据库.sql, 把蓝色部分去掉, 不然会错, 其实删第一行就可以了, 然后把数据库.sql 文件中的数据粘贴到文本框内执行导入, 也可以浏览找到数据库文件打开执行导入, 然后等待, 等待的时间由空间的速度决定, 这样数据库就导好了

4,善后工作
如果你的系统是UNIX/LINUX的话, 请设置文件夹属性, 不是跳过这步, 要设置为777的文件和文件夹有

.//wp-content/uploads/attachments
./customavatars
./forumdata
./templates
config.php 这个无所谓

其中./forumdata ./templates这两个文件夹和其子文件夹文件通通要设置成777

最后修改config.php的
[code] $dbhost = ‘localhost’; // database server
$dbuser = ‘sql’; // database username
$dbpw = ‘pw’; // database password
$dbname = ‘sql’; // database name
$adminemail = ‘@hotmail.com’; // admin’s email
$dbreport = [/code]
OK! 完工!

Til next time,
Jason at 00:00

scribble

About Projects Tool Guestbook