mysql定时备份和删除

             随着官网和bbs逐步全面上线,数据库备份的工作也应该全面展开了,虽然数据量不是很大,但也要重视起来。

         下面是脚本:

#!/bin/bash
#每天备份一次,并删除7天前备份的旧数据

#数据库配置信息
db_user=******
db_passwd=******
db_host=localhost


#备份目录
backup_dir=/home/database/

#获取当前时间
time=`date +%Y%m%d`

#mysql命令
MYSQL=/opt/mysql/bin/mysql
MYSQLDUMP=/opt/mysql/bin/mysqldump

#测试备份目录是否可写,如果不可写就报错退出
test ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0

#测试备份目录中最新备份文件夹是否存在,如果不在就创建
test ! -d "$backup_dir/backup.0/" && mkdir "$backup_dir/backup.0"


#制定要备份的数据库
for db in bbs home
do
	$MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db | gzip -6 > "$backup_dir/backup.0/$db.$time.sql.gz" 
done

#检测最旧的备份数据库是否存在,如果在就删掉
test -d "$backup_dir/backup.7/" && rm -rf "$backup_dir/backup.7"

#循环修改备份数据库目录的编号,记录新旧程度
for int in 6 5 4 3 2 1 0
do
	if(test -d "$backup_dir"/backup."$int")
	then
		next_int=`expr $int + 1`
		mv "$backup_dir"/backup."$int" "$backup_dir"/backup."$next_int"
	fi
done
exit 0;



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值