coreserverのバックアップ方法変更(その1)
coreserverが月額150円でバックアップをやってくれるサービスが始まっていた。
しかし、すでにファイル喪失しているし、7世代までなので、しばらくほっとくとどうなのかよくわからないし、注意事項を見ると自衛が必要みたいなので、自分でちゃんとバックアップするようにした。
バックアップ処理は、深夜から早朝にかけて実行されますが、状況によって数時間前後する場合がございます。
バックアップデータの完全性、正確性、有用性等を保証するものではありません。
データの保全のため、お客さまご自身でもバックアップをお願いいたします。
(以下は、備忘です)
まずは、昨日やったフォルダバックアップの変更から(html-backup.sh)
#!/bin/bash
# ファイルを保存する期間を設定(気づいたら溜まっていた・・防止)
period='+2'
# バックアップを保存するフォルダ
dirpath='/virtual/loginname/backup/'
#バックアップ対象フォルダ
backupfolder=’/virtual/loginname/public_html’
backupfolder2=’/virtual/loginname/public_html/piwigo’
#public_htmlからバックアップの対象としないフォルダ
direxc1=’/virtual/loginname/public_html/blog1′
direxc2=’/virtual/loginname/public_html/blog2′
direxc3=’/virtual/loginname/public_html/piwigo’
# バックアップファイル名の設定
mydate=`date +%y%m%d`
filename1=”loginname_bkup1_$mydate.tar.gz”
filename2=”loginname_bkup2_$mydate.tar.gz”
#bバックアップファイルの作成
tar -zcvf $dirpath/$filename1 -C / $backupfolder –exclude=$direxc1 –exclude=$direxc2 –exclude=$direxc3
tar -zcvf $dirpath/$filename2 -C / $backupfolder2
# chmod
chmod 700 $dirpath/$filename
# 古いファイルを削除する
find $dirpath -type f -daystart -mtime $period -exec rm {} \;
EOF
piwigoはファイル数が多いので、別にバックアップを保存します。
また、WordPressはプラグイン(BackWPup)でバックアップを作成します。保存先は、blog1を/backup/blog1に、blog2を/backup/blog2にしています。
続いて、mysqlのバックアップの設定
#!/bin/sh
# パラメータの設定
DATABASE=loginname_piwigo
DBUSERNAME=loginname_piwigo
PASSWORD=yourpassword
XREAUSERNAME=loginname
BACKUPDIR=backup
KEEPDAY=2
# バックアップ関連の設定
PREFIX=loginname_piwigo-mysql
SERVER=localhost
NOWDATE=`date +%Y%m%d`
DESTDIR=/virtual/$XREAUSERNAME/$BACKUPDIR
DUMPFILE=$PREFIX.$NOWDATE.dump
TARFILE=$PREFIX.$NOWDATE.tar.gz
OLDDATE=`date "-d$KEEPDAY days ago" +%Y%m%d`
# MySQLのバックアップ取得
cd $DESTDIR
/usr/local/mysql/bin/mysqldump $DATABASE --host=$SERVER -u $DBUSERNAME --password=$PASSWORD -e > $DUMPFILE
tar zcvf $TARFILE $DUMPFILE
# バックアップができたか確認
if [ $? != 0 -o ! -e $TARFILE ]; then
echo "backup faild -- ($DUMPFILE)"
exit 1
fi
# ダンプの削除
rm -f $DUMPFILE
# 古いのを削除
rmfile=$DESTDIR/$PREFIX.$OLDDATE.tar.gz
if [ -e $rmfile ]; then
rm -f $rmfile
fi
これをcrontabで毎日動かすと、ファイルとDBのバックアップがバックアップフォルダに毎日保存してくれ、BackWPupによりWordPressも毎日バックアップしてくれるようになりました。