centos7定时备份mysql数据库,并且删除旧的备份文件
新建一个dbBack.sh文件,之间上代码:
#!/bin/bash #备份的文件名称,以日期时间作为文件名 fileName=`date +%Y%m%d%H%M%S` #host地址 dbHost=127.0.0.1 #数据库用户,这里换成自己的 dbUser=root #数据库密码,这里换成自己的 dbPass=root #数据库名称 dbName=www_dcr163_cn #数据库备份路径 savePath=/www/www_dcr163_cn/dbBack/datas #mysql备份命令,并且压缩,这里的mysqldump命令替换成自己服务器的位置 /usr/local/mysql/bin/mysqldump -h$dbHost -u$dbUser -p$dbPass $dbName | gzip > $savePath/$fileName.sql.gz #删除7天前的旧备份文件 \; 之间不能有空格 find $savePath -name "*.sql.gz" -mtime +7 -exec rm {} \;
文件保存后,新建crontab定时任务:
crontab -e #每天凌晨30分备份www_dcr163_cn数据库,这里的sh文件,替换成自己的就行 30 0 * * * sh /www/www_dcr163_cn/dbBack/dbBack.sh
Dcr163的博客
http://dcr163.cn/243.html(转载时请注明本文出处及文章链接)