duyojiぶろぐ

技術系ときどき日常系

mysqlのデータのバックアップをとるシェルスクリプト

メモ

#!/bin/sh

# MySQLユーザ
user=ユーザー名
# MySQLパスワード
pw=パスワード
# バックアップするデータベース名
db_name=データベース名
# バックアップ先
save_dir=/path/to/backup_dir/
# バックアップファイルを残す数
max_save_count=4
# バックアップファイル名
backup_name=`date +"%Y-%m%d-%H%M%S".sql`

/usr/local/mysql/bin/mysqldump -u$user -p$pw $db_name > $save_dir$backup_name 
cd $save_dir
tar czf $backup_name.tar.gz $backup_name
rm -rf $save_dir$backup_name
file_count=`ls -1 | wc -l`
if [ $file_count -gt $max_save_count ] 
then
        rm -rf `ls -1 | head -1 | xargs rm -rf`
fi