ツンデレ本管理プロジェクト DBバックアップ自動化の話

はい、作業のたびにmysqldumpを走らせていましたが…

自動でしました。そんな地味テクニックですw

出来上がりスクリプト

#!/bin/sh
SEDAI=10
FILE_POSTFIX=""
if [ $# = 1 ] ; then
	FILE_POSTFIX="_$1"
fi
DUMPFILE=mmpp_tsundere_`date '+%Y%m%d%M%S'`$FILE_POSTFIX.dump
mysqldump -u**** -p****** -hmysql***.sakura.ne.jp mmpp_tsundere > ~/backups/tsundere/$DUMPFILE
FILE_COUNT=0
for FILE in `ls ~/backups/tsundere/*.dump | sort -nr` ; do
	FILE_COUNT=$(expr $FILE_COUNT + 1)
	if [ $FILE_COUNT -gt $SEDAI ] ; then 
		echo x $FILE 
		rm ~/backups/tundere/$FILE
	fi
done

mysqldumpの接続周りはブランクにしていますがこんな感じです

ファイル名を引数名称で変更しています

ファイルを10ファイル残しています

あとは、crontabで

0 4 * * * backup.sh CRON

パスは通してねw

これで、4時にバックアップを実行してくれます。

手動の場合は引数がなしでなんとなくファイルを判断します

シンプルですが、これだけです