MySQLバックアップ用シェルスクリプト

skywalker

●下記の内容で「mysql_bak_script.sh」として保存。
●サーバにアップロードして、cronで定期実行させる。
 例)/[アップロード先のパス]/mysql_bak_script.sh
#!/bin/sh

PATH=/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin

KEEPDAY=[保存する日数=半角数字]
TODAY=`date +'%y%m%d'`
DBDUMP_FILE=mysql.$TODAY
RMFILE=mysql.`date -v -"$KEEPDAY"d +%y%m%d`.gz
HOME_DIR=/[バックアップ保存先のパス]
BACKUP_DIR=$HOME_DIR/[バックアップ保存ファイル名]

cd $BACKUP_DIR

mysqldump mt_shpl -Q --host=localhost --user=[MySQLユーザ名] --password=[パスワード] > $DBDUMP_FILE

gzip $DBDUMP_FILE >/dev/null 2>&1

if [ $? != 0 -o ! -e $DBDUMP_FILE ]; then
echo "SUCCESS! MAYBE!"
rm -f $RMFILE
exit 0
fi