linux下自动备份数据库shell脚本

请勿直接复制,你还需要根据你自己的情况修改对应的保存路径,数据库名称,用户名密码等

话不多说,直接上代码

#!/bin/bash
#保存备份个数
number=3
#备份保存路径
backup_dir=/www/backup/database
#日期
dd=$(date +%Y%m%d)
#备份工具
tool=mysqldump
#用户名
username=xxxxx
#密码 password=xxxxx #需要备份的数据库 database_name=xxxxxx #执行备份并打包 # $tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql $tool -u $username -p$password $database_name | gzip > $backup_dir/$database_name-$dd.sql.gz #创建备份日志 echo "" >> $backup_dir/log.txt #输出当前时间 date --date='0 days ago' "+%Y-%m-%d %H:%M:%S" >> $backup_dir/log.txt echo "-------开始-------" >> $backup_dir/log.txt echo "create $backup_dir/$database_name-$dd.dump" >> $backup_dir/log.txt #找出需要删除的备份 delfile=`ls -l -crt $backup_dir/*.dump | awk '{print $9 }' | head -1` #判断现在的备份数量是否大于$number count=`ls -l -crt $backup_dir/*.dump | awk '{print $9 }' | wc -l` if [ $count -gt $number ] then rm $delfile #写删除文件日志 echo "delete $delfile" >> $backup_dir/log.txt fi echo "-------结束--------" >> $backup_dir/log.txt

 

posted @ 2020-06-04 17:22  郭德纲又打人了嘿  阅读(525)  评论(0编辑  收藏  举报