Fork me on GitHub
KeKe Blog

禅道迁移/升级/备份

  最初技术中心的禅道系统是部署在windows系统上,由于运维的部门调整,现在要将禅道重新归属于运维部去管理。为了方便统一管理和操作,需要将禅道系统迁移到运维熟悉的CentOS服务器上。通过相关资料和视频的知道,基本确定了“windows to linux”的迁移方式和事项。
  根据上一篇在虚拟机中多加载了一块磁盘分区后,现在需要将禅道的系统迁移到该服务器上。
  官方迁移指导视频

1 迁移的条件

  • 禅道版本:8.1.3
  • 迁移所需的数据文件:
    • 数据库文件:../xampp/mysql/data/zentao
    • 数据文件:../xampp/zentao/www/data/upliad/1

2 禅道迁移

2.1 部署8.1.3

  • 在CentOS系统上部署与windows系统一样的8.1.3版本的禅道软件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@KE_03 opt]# cd /opt
[root@KE_03 opt]# wget http://dl.cnezsoft.com/zentao/8.1.3/ZenTaoPMS.8.1.3.zbox_64.tar.gz
[root@KE_03 opt]# ll
总用量 31124
drwx------ 2 root root 16384 1月 18 22:39 lost+found
-rw-r--r-- 1 root root 31851357 3月 23 2016 ZenTaoPMS.8.1.3.zbox_64.tar.gz
[root@KE_03 opt]# tar zxvf ZenTaoPMS.8.1.3.zbox_64.tar.gz
[root@KE_03 opt]# cd zbox/
[root@KE_03 zbox]# ./zbox start
Start Apache success
Start Mysql success

  安装完成后,在浏览器里直接输入IP地址访问,选择“开源版”,默认账号/密码:”admin/123456”,登录成功后,说明部署已完成。

2.2 数据迁移

  • 在windows对相关数据进行备份
1
2
3
..\xampp\mysql\data\zentao
..\xampp\zentao\www\data\upload\1
  • 将备份的数据上传到linux中已部署好禅道目录下
1
2
3
4
5
6
7
8
9
/opt/zbox/data/mysql/zentao
/opt/zbox/app/zentao/www/data/upload/1
# 重启zentao
cd /opt/
./zbox restart
# 至此,迁移就完成了。
  • 禅道常用命令
1
2
3
4
5
6
7
8
9
10
11
12
cd /opt/
# 启动
./zbox start
# 关闭
./zbox stop
# 重启
./zbox restart
# 状态
./zbox status

3 禅道升级(官方)

  目前,技术中心使用的禅道为开源版8.1.3,为了跟上新版本的步伐。在迁移后,上头上我研究研究如何对禅道进行升级。对于这一块,我在官网上找到了两种方式,过程十分简单粗暴。

3.1 升级步骤

  • 下载所需升级版本的源码包(zip格式)。(注意,不是.tar.gz 的集成运行环境,如果下载这个,会造成数据被覆盖)

  • 解压缩后得到zentaopms文件夹,将zentaopms/下面的所有文件复制到/opt/zbox/app/zentao/下面,覆盖同名文件。

1
\cp -rf /opt/zentaoms/* /opt/zbox/app/zentao/
  • 然后访问http:/ip地址/zentao/upgrade.php,按照页面提示进行升级即可。

  • 不要解压缩成/opt/zbox/app/zentao/zentao。不要将原来的程序移走,再解压缩新的版本,注意是覆盖!

3.2 注意事项

  • 如果使用的一键安装包版本比较久,升级之后还需要修改下apache的配置文件。
1
2
3
4
5
cd /opt/zbox/etc/apache
修改 httpd.conf文件。
AccessFileName .htaccess
将.htaccess改为.ztaccess 然后重启apache。

4 禅道备份(官方)

4.1 一键安装包备份

  如果是一键安装包程序,简单的方法就是直接将整个一键安装包的目录进行备份。玩了完整备份,在备份钱需要将Apache和MySQL服务器停止。

  • windows一键安装包是备份整个xampp目录

  • linux一键安装包备份 /opt/zbox/data/mysql/zentao(pro) 和 /opt/zbox/app/zentao(pro) 目录

  • linux下lampp搭建备份 /opt/lampp/var/mysql/xxxxx (xxxx表示禅道数据库名称,一般默认是zentao) 和 /opt/lampp/htdocs/zentaopms

4.2 手工备份

4.2.1 配置文件、代码和附件的备份

1
2
3
4
配置文件存放在zentao/config/my.php
附件存放在zentao/www/data/目录下面。
修改的代码也都放在zentao目录下面。
因此备份配置文件、代码和附件的方法就是将整个zentao目录备份即可。

4.2.2 数据库备份

  • 直接备份数据库原始文件
1
找到mysql的data目录,windows一般是在mysql安装目录下面。linux则一般是在/var/mysql或者/var/db类似的目录下面。在data目录下面,会有一个zentao的目录,这个zentao目录就是原始的数据库文件,直接复制这个也是可以的。linux下面可能需要注意权限的问题。
  • 通过导出备份文件
1
可以使用mysql提供的管理工具,将数据库导出: mysqldump -u xxx -p zentao > zentao.sql,其中的user换成实际的用户。

4.2.3 禅道系统备份

  • 管理员权限登录禅道

  • 在计划任务中添加备份计划

4.2.4 使用禅道自带脚本

  从4.0版本开始,官方提供了init.bat和init.sh脚本来初始化各个命令行的维护脚本,其中有一个就是用来备份数据库和附件,名字叫做backup.bat(windows)或者backup.sh(linux)。

  初始化管理脚本先对各个脚本进行初始化操作。然后切换到zentao/bin/目录下面,执行backup.bat或者backup.sh。

  • windows下面执行backup.bat
1
2
3
4
5
I:\xampp\zentao\bin>backup.bat
I:\xampp\zentao\bin>i:\xampp\php\php.exe I:\xampp\zentao\bin\php\backup.php
Backuping database, successfully saved to I:\xampp\zentao/backup/201304/db.20130402.zip
Backuping files, successfully saved to I:\xampp\zentao/backup/201304/file.20130402.zip
  • linux下面执行backup.sh
1
2
3
./backup.sh
Backuping database, successfully saved to /mnt/data/z/pms/backup/201304/db.20130402.zip
Backuping files, successfully saved to /mnt/data/z/pms/backup/201304/file.20130402.zip

  备份成功之后,数据库文件和附件分别以日期为名,保存到zentao/backup目录下面。

注意事项:如果mysql服务停止的话,mysql数据是无法备份的。该方式相当于热备。

5 参考资料

禅道官方说明

-------------本文结束 感谢您的阅读-------------