Redmineバックアップスクリプト

2016年5月13日 Posted by PURGE

#!/bin/sh
#
# Redmine DB backup script
# 

FILE_DIR=/app/redmine/files/
DMP_DIR=/var/tmp/
MNT_DIR=/mnt/rm/
BAK_DIR="//10.0.0.0/windows/Backup/dir/rm"
PERIOD=5
DB_USER=dbuser
DB_PASS=xxxxxx

USER_NAME=username
PASSWD=xxxxxxx
EXIT_STATUS=0

FILE_NAME=`date +%y%m%d`
RM_FILE_NAME=`date --date "$PERIOD days ago" +%y%m%d`

DMP_FILE=$DMP_DIR/Redmine_DB_$FILE_NAME.sql.gz
ARC_FILE=$DMP_DIR/Redmine_FILE_$FILE_NAME.tar.gz

RM_DMP_FILE=$MNT_DIR/Redmine_DB_$RM_FILE_NAME.sql.gz
RM_ARC_FILE=$MNT_DIR/Redmine_FILE_$RM_FILE_NAME.tar.gz

# ファイルサーバへマウント
mount -t cifs -o username=$USER_NAME,password=$PASSWD $BAK_DIR $MNT_DIR

# データのダンプ
mysqldump --opt --single-transaction --default-character-set=binary -u $DB_USER --password=$DB_PASS --all-databases | gzip > $DMP_FILE
echo "Redmine DB Backup OK"

# 添付ファイルのアーカイブ
tar cfvz $ARC_FILE $FILE_DIR
echo "Redmine Files Backup OK"

# ファイルの移動
mv $DMP_FILE $MNT_DIR
mv $ARC_FILE $MNT_DIR
echo "Redmine Files Move to Server OK"

# ファイルの削除
rm $RM_DMP_FILE
rm $RM_ARC_FILE
echo "Redmine Files Cleanup OK"

umount -l $MNT_DIR

exit $EXIT_STATUS

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です