discuz从windows迁移到ubuntu

牢骚:如果你对discuz和wordpress这种小项目不熟悉,在接私活时真心要谨慎行事,性价比会非常低,耗费大量精力的同时,赚到的钱又很少。这个活是一熟悉的领导联系的,初衷是想要帮忙,所以对价格没有什么需求。同时对于工作内容也没有严格界定,保持现状即可,可以当真正接手的时候发现这个项目满目疮痍。

首先用windows部署discuz,本身并没有问题,不过由于我对windows作为web server没有任何运维经验,当网站性能非常差的时候,没有找到原因。remote到windows系统,发现因为cpu占用率过高几乎导致界面不能操作。其次发现内存所剩无几,在discuz安装统计工具后发现,一天pv也就2k。推测原因就是php进程耗费内存过多。果断迁移到ubuntu。一是减少运维成本;二是就当前这点量,每年给甲方省500快费用。

下面简单说下迁移过程中,遇到的各种问题:

在qingcloud上测试ubuntu下,是否可以完全迁移该网站
测试步骤:
1 rar当前网站的目录,download到本地
2 setup ubuntu的环境(apache2,php5,mysql-server,php5-mysql)
3 scp rar到ubuntu的挂载磁盘(200g)
4 通过discuz的install安装web,通过restore.php恢复数据库
http://www.discuz.net/thread-3517796-1-1.html
http://www.discuz.net/thread-3602591-1-1.html

以上测试完毕后,让甲方购买ecs服务器(提前建好购物单)

1 保持当前windows网站的运行
2 购买1个月ecs服务
3 布置网站环境,开启,找甲方测试
4 正式切换域名指向

挂载硬盘
https://docs.qingcloud.com/faq/
http://bbs.aliyun.com/read/233027.html?pos=16

windows是云享主机,内存1.5g,远程该机器已经很慢,还需要优化iis的速度。果断决定更换服务器。

首先,discuz一定要选择gbk版本的,原因是windows安装一般是gbk。防止出现各种乱码问题。

其次,明确迁移哪些数据:论坛所有表 + ucenter所有表。3.0后在站长数据库中可对两部分数据一起备份。这里因为第一步在ubuntu选择了gbk版本的discuz,所以不需要做任何特殊设置,直接备份。然后论坛数据对应的附件data/attachment中。然后ucenter中的所有头像uc_server/data/avatar中,都需要保存下来

最后,在ubuntu挂载新的硬盘,按照教程install discuz。然后利用restore.php导入备份数据。这里需要注意,ucenter,数据导入不成功的情况下,直接通过mysql client 的source进行导入即可。这里还需要关注原来网站的应用部分,这里需要迁移,防止效果丢失。在配置过程中,apache需要配置rewrite规则,在全局->seo优化中如果开启了url优化的话,见文档http://117.121.25.97/admin.php?action=checktools&operation=rewrite&frame=no

广告也需要设置,运营->站点广告->广告列表需要重新提交
xwb.php 和 xwb文件夹需要copy到ubuntu,新浪微博插件

全局 域名设置 应用域名 默认去掉,域名切换后更改回来

因为discuz版本升级,带来的数据库更新

ALTER TABLE pre_common_member_status ADD port INT(11) UNSIGNED NOT NULL ;

ALTER TABLE pre_common_member CHANGE username username char(35) NOT NULL DEFAULT '', ADD freeze tinyint(1) NOT NULL DEFAULT '0' AFTER conisbind, ADD INDEX regdate (regdate);

ALTER TABLE pre_forum_post ADD port INT(11) UNSIGNED NOT NULL ;

ALTER TABLE pre_forum_postcomment ADD port INT(11) UNSIGNED NOT NULL ;

discuz从windows迁移到ubuntu
Share this