论坛更换服务器并更新版本成功,附Discuz搬家遇到的几个问题
时间:2017-09-23 23:19:23 人气:524

阿里云的服务器到期了,因为新购优惠力度不小,因此选择了重新购买。在和阿里云客服确定服务器到期备份不会被取消后(只要域名还指向阿里云的服务器域名备案就不会被取消接入,重新购置了一款ESC。

网站搬家其实都大同小异,备份程序与数据库再迁移与还原。

论坛用的Discuz程序是discuz x3.2,最近以管理员身份登陆论坛时,浏览器一直会加载一个js文件,看着不爽,百度该js文件发现很多人遇到这个问题,原因是Discuz关闭了漫游服务和云平台,所以js会处于长时间的加载状态,解决方法是升级到最新版本。

所以决定升级到最新版本。

于是通过管理后台检测新版本,但是提示当前无需升级,已经是最新版本,很是蛋疼。传统的先搬家后再在线升级到最新版本是行不通,只能程序要重新安装新版本,再恢复数据库与模板、图片等文件!

一:关闭前台访问,防止备份时,有新数据写入数据库

先关闭Discuz访问,并提示预计晚上11点半恢复访问。



二:备份老服务器的程序与数据库

还有8小时服务器就到期了,所以若是数据备份不完整,服务器到期后,也没办法下载,于是采用双重备份了数据库。

先在DZ后台,备份数据库,然后又下载帝国备份王到服务器,同时也备份一份数据库到服务器上。


三:下载数据

数据库文件备份完成后,使用文件管理器,在线压缩所有文件,打包下载到电脑上


四:新服务器安装新版本Discuz程序

因论坛数据库有几百M,备份大约用了20分钟,期间不能闲着,于是在新服务器上同时安装新版本论坛程序,安装好又喝杯水,数据库还特么在跑,这就尴尬了,现在跑去追剧不太合适。

想到域名解析有缓存,所以打算提前把域名解析到新服务器。OK,关闭新论坛的前台访问,新建个index.html首页,同样提醒论坛维护。


五:还原数据库至新服务器

文件打包到电脑后,解压出来,重新将帝国备份王所在文件夹打包上传并解压到新服务器,设置并连接到新数据库,再还原数据库。

不使用discuz自带的还原数据库是因其备份的数据并不是所有的数据库都会被备份,为了完整性,故优先选择帝国备份王原因。


六:上传差异文件

根据DZ后台提示,搬家时,需迁移模板和图片所在文件夹。所以将电脑上的 template/模板名 和 data/attachment/ 二文件夹单独剪切出来

平时上传到服务器调试的文件、自用的图片文件夹、和自己写的采集接口文件也剪切出来。

再对照之前安装的论坛插件,将各插件所在的文件夹也剪切出来。

最后,打包这些包剪切出来的差异文件之后,上传到新服务器上,再解压移动到相应文件夹中。


七:搞定

数据上已经完全恢复,登陆DZ后台,执行重建立缓存,以及打开前台浏览功能,并删除之前建立的index.html文件即可。


到此,工作完成!


八:测试

访问前台测试功能是否正常,根据剧情设定,到这一步,若是不出现点问题,编剧肯定是个不合格的编剧。

首先,一些论坛VIP可见的资源,直接显示出来了,出售的资源,也显示出来了,说明插件没起作用,于是进入后台,关闭所有插件,并重新开启,问题解决。

关闭插件时,发现老服务器的插件有些没上传过来,后台同样显示到了,于是从后台先将他们卸载,但是又会显示他们末安装,联想到数据库存在他们的纪录,于是打到Discuz的数据库字典,登陆数据库找到插件表,删掉他们的纪录,同时也将QQ互联、防水墙也都删掉了。问题解决。

再测试论坛的注册、登陆、发帖、回帖均正常。

虽然从老服务器打开了很多文件没有用上,不过现在没检查到问题,说明不了以后不会遇到,留着完整的备份文件,总是有好处的。

上面就是纪录本次搬家升级论坛的全部过程,给不会的同学和以后自己再次用到时做个参考,毕竟一年弄不了几次,难免以后会有遗忘或疏忽。


补充:这样备份其实是有缺点的,即x3.2和x3.4数据库表存在差异时。

当x3.4数据库表有新增时,我原因的x3.2的数据表,会导致新增表涉及到的功能不可用。

当x3.4数据表有删减时,会导致少部分数据库有沉冗垃圾,不过对功能及数据影响几乎可以忽略。


如果大家遇到相同问题时,建议采用下面方式:

使用帝国备份王备份数据库→打包网站程序和数据库备份上传到新服务器上解压恢复数据库→打开数据库配置文件修改数据库服务器、账号、密码

此方式优点是,完美搬家,保证和老服务器数据一模一样,不仅程序数据库完整搬家,连缓存都迁了,更不用对比文件差异,连缓存都不需要更新


称呼:
网友评论列表
共有 0 条评论
热门评论