Confluence 6 用户提交的备份和恢复脚本

下面的代码是用户提交的,在使用的时候需要小心,因为 Atlassian 不提供这些代码的技术支持。如果你在使用或者修改这些代码的时候有任何问题,请粘贴到 post them to Atlassian Answers

删除老的备份 —— Windows 的 Wscript 脚本


'If you want 3 day old files to be deleted then insert 3 next to Date - "your number here"
'This script will search out and delete files with this string in them ".2005-12-04-" This of course depends on the number you enter.
'You can always do a wscript.echo strYesterday or strFileName to see what the script thinks you are searching for.
dtmYesterday = Date - 3
strYear = Year(dtmYesterday)
strMonth = Month(dtmYesterday)
If Len(strMonth) = 1 Then
    strMonth = "0" & strMonth
End If
strDay = Day(dtmYesterday)
If Len(strDay) = 1 Then
    strDay = "0" & strDay
End If
strYesterday = strYear & "-" & strMonth & "-" & strDay
strFileName = "C:\test*." & strYesterday &"-*"
Set objFSO = CreateObject("Scripting.FileSystemObject")

删除老的备份 ——  Linux Basic Bash Script

Old 的 XML 备份可以通过每天晚上或者每周的自动运行脚本进行删除。你也可以在 cron 中设置相似的脚本:

ls -t <path to your backup dir>/* | tail -n +6 | xargs -i rm {}

或者,使用 tail 命令,如果你的系统不支持标准格式的话:

ls -t <path to your backup dir>/* | tail +6 | xargs -i rm {}

Del 删除老的备份 —— 高级 Linux  Bash Script

Old 的 XML 备份可以通过每天晚上或者每周的自动运行脚本进行删除,针对你的站点设置 BACKUP_DIR 和 DAYS_TO_RETAIN 变量。在运行之间,相对 DAYS_TO_RETAIN 更多文件将会构建。

# Script to remove the older Confluence backup files.
# Currently we retain at least the last two weeks worth
# of backup files in order to restore if needed.
find $BACKUP_DIR -maxdepth 1 -type f -ctime +$DAYS_TO_RETAIN -delete

手动数据库和 Home 目录备份 —— Linux Basic Bash Script

这个将会备份 MySQL 数据库和 Confluence 的 Home 目录。

CNFL_BACKUP=/backup/cnflBackup/`date +%Y%m%d-%H%M%S`
rm -rf $CNFL/temp/*
mysqldump -uroot -p<password> confluence|gzip > $CNFL_BACKUP/
tar -cjvf $CNFL_BACKUP/data.bzip $CNFL > $CNFL_BACKUP/homedir.status

按照日期备份 —— Postgres

export d=`date +%u`
mkdir -p /home/backup/postgres/$d
sudo -u postgres pg_dumpall | bzip2 > /home/backup/postgres/$d/sql.bz2

posted @ 2018-06-18 21:39  huyuchengus  阅读(99)  评论(0编辑  收藏