confluence备份有两种方式:
一、软件自带的备份机制
管理员账号登录Confluence,点击右上角的"一般配置"-"每日备份管理"进行管理,默认每天凌晨2点会自动备份一个zip打包的数据,存放在服务器的/var/atlassian/application-data/confluence/backups路径下,但是该方法不推荐使用,可能对服务本身产生影响。
二、手动备份-通过定时备份脚本实现
1、数据库备份
mysqldump -uUSER -pPASSWORD -hlocalhost -P3306 CONFLUENCE_DB > /CONFLUENCE_HOME/backup.sql
2、文件数据备份
文件备份我们只需要把application-data目录备份即可。
3、备份脚本编写
#!bin/bash
DATE=$(date "+%Y-%m-%d")
echo $DATE
mysqldump -uconfluence -pPASSWORD -hlocalhost -P3306 confluence2 > /BACKUP_HOME/backup/sql/backup_$DATE.sql
cp -R /CONFLUENCE_HOME/application-data/ /BACKUP_HOME/backup/tmp/.
cd /BACKUP_HOME/backup/tmp/
tar -zcvf ../data/backup_$DATE.tar.gz application-data
rm -rf application-data
# 删除30天前的数据
DATE2=$(date -d -30day '+%Y-%m-%d')
echo $DATE
cd /BACKUP_HOME/backup/data
rm -rf backup_$DATE2.tar.gz
cd /BACKUP_HOME/backup/sql
rm -rf backup_$DATE2.sql
4、定时任务设置
1 2 * * * /bin/bash /xxx/backup.sh
该语句代表每天凌晨2:01执行backup.sh
其中有两种方式进行定时任务设置:
(1)crontab -e,编辑保存即可
(2)如果方法(1)无法保存,可以通过以下方法设置
#编辑
vi /etc/crontab
#重启crond
service crond restart
#列出定时任务
crontab -l
注意如果是方法(2)的话需要在crontab指令里指定用户,比如
1 2 * * * root /bin/bash /xxx/backup.sh