Redmine系统搭建(下)

该节是整个的最后一部分,我们来聊聊redmine的备份。
Redmine在使用过程中,如果系统发生宕机或者要移植整个Redmine系统时,该如何处理呢?比较好的习惯是,对Redmine进行定期备份,如果发生宕机等上述场景时,我们可以通过还原操作,保证整个系统的稳定。

1
2
3
六、Redmine备份、还原
    1.Redmine文件及mysql备份
    2.Redmine文件及mysql还原

六、Redmine备份、还原

1.Redmine文件及mysql备份

Redmine备份主要包括两个部分,一个是redmine文件部分,也就是附件部分,放置在/opt/redmine-3.1.0-0/apps/redmine/htdocs/files; 另一个就是db部分。

1.1.脚本备份

运行如下任务进行Redmine文件及mysql自动备份,Backup_ETS_Redmine_Jobs和backup_redmine.sh内容如下:

1
2
3
4
#Backup_ETS_Redmine_Jobs内容如下:

#run backup_redmine.sh
10 18 * * * /opt/install_redmine/backup_redmine.sh >> /opt/install_redmine/backup_redmine.log 2>&1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#backup_redmine.sh 内容如下:

#!/bin/bash
dir="/opt/redmine-3.1.0-0" ; export dir
backup_dir="/opt/redmine_bak" ; export backup_dir

if [ ! -d ${backup_dir}"/"`date +%Y%m%d` ];then
    mkdir -p ${backup_dir}"/"`date +%Y%m%d`
fi
backup_dir_2=${backup_dir}"/"`date +%Y%m%d`; export backup_dir_2

#stop mysql
#./$dir/ctlscript.sh stop mysql
#start bitnami console
#cd ${dir} ; ./use_redmine

${dir}/mysql/bin/mysqldump -u root -p11111111 -S $dir/mysql/tmp/mysql.sock bitnami_redmine > ${backup_dir_2}"/redmine_backup_"`date +%Y%m%d%H%M%S`".sql"

#backup redmine data
cd $dir/apps/redmine/htdocs
tar -zcvf ${backup_dir_2}"/files_backup_"`date +%Y%m%d%H%M%S`.tar.gz files

#start mysql
#./$dir/ctlscript.sh start mysql
echo "********backup is done!!!*********"

Notes:

  • Backup_ETS_Redmine_Jobs里的Path可修改
  • 以root用户登录后台并执行 crontab Backup_ETS_Redmine_Jobs
  • 默认每天的18:10进行Mysql、Files的备份
  • 每天手动下载到本地,并自动扫描到云盘备份
  • 1.2.手动备份
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    以root用户登录控制台,执行如下语句,进行mysql的备份

    方法一:
    /opt/redmine-3.1.0-0/mysql/bin/mysqldump -u root -p -S /opt/redmine-3.1.0-0/mysql/tmp/mysql.sock bitnami_redmine > /var/redmine_bak.sql (需要手动输入mysql的密码)

    方法二:
    /opt/redmine-3.1.0-0/mysql/bin/mysqldump -u root -p11111111 -S /opt/redmine-3.1.0-0/mysql/tmp/mysql.sock bitnami_redmine > /var/redmine_bak.sql (不用输入密码)

    以root用户登录控制台,执行如下语句,进行附件库(数据文件)备份
    # cd /opt/redmine-3.1.0-0/apps/redmine/htdocs
    # tar -zcvf /var/files_bak.tar.gz ./files/

    2.Redmine文件及mysql还原

    步骤一:mysql还原

    用root用户运行如下语句:mysql -u root -p bitnami_redmine < /var/redmine_bak.sql 其中,-p 代表database_name

    步骤二:附件库还原

    直接将备份的/var/files_bak.tar.gz解压缩到/opt/redmine-3.1.0-0/apps/redmine/htdocs /files目录下即可

    步骤三:恢复完毕后重启Redmine

    cd /opt/redmine-3.1.0-0/
    ./ctlscript.sh restart

    Notes:
    如果页面有乱码,可编辑/opt/redmine-3.1.0-0/apps/redmine/htdocs/config/database.yml,将production字段的encoding注释掉即可。

    Tags:
    文 / 甲乙丙丁
    LEAVE A REPLY

    loading