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
本文来自博客园,作者:郭德纲又打人了嘿,转载请注明原文链接:https://www.cnblogs.com/blibli/p/13044821.html