mysql备份脚本-阿里云开发者社区

开发者社区> 数据库> 正文
登录阅读全文

mysql备份脚本

简介:

mysql备份脚本且只保留5天(已经经过测试)

#!/bin/bash

#mysql_bask.sh: backup mysql databases and keep newst 5 days backup.

#------------------------------------------

db_user="root"

db_passwd="123456"

db_host="localhost"


#the directory for story your backup file.

backup_dir="/back"


#date format for backup file (dd-mm-yy)

time="$(date +"%d-%m-%Y")"


#mysql,mysldump and some other bin's path

MYSQL="$(which mysql)"

MYSQLDUMP="$(which mysqldump)"

MKDIR="$(which mkdir)"

RM="$(which rm)"

MV="$(which mv)"

GZIP="$(which gzip)"


#check the directory for store backup is writeable

test ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0


#the directory for story the newest backup

test ! -d "$backup_dir" && $MKDIR "$backup_dir"


#get all databases


#$MYSQLDUMP -u $db_user -h $db_host -p$db_passwd -A --events | $GZIP -9 > "$backup_dir/$time.$db.gz"


#each libaray separately backup

all_db="$($MYSQL -u $db_user -h $db_host -p$db_passwd -Bse 'show databases')"

for db in $all_db

do

$MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db | $GZIP -9 > "$backup_dir/$time.$db.gz"

done


#delete the oldest backup 30days age

find $backup_dir -name "*.gz" -mtime +30 | xargs rm -rf


exit 0;



本文转自 zhuxtqw 51CTO博客,原文链接:http://blog.51cto.com/1054054/1703243,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章
最新文章
相关文章