自动备份mysql并删除7天前备份
1.远程连接服务器
先参看https://www.west.cn/faq/list.asp?unid=417 教程远程登陆服务器
2.下载备份脚本文件
windows: 下载http://downinfo.myhostadmin.net/vps/bkupmysql.bat 保存到d盘根目录
linux: wget http://downinfo.myhostadmin.net/vps/bkupmysql.sh 保存到/root目录
3.编辑脚本文件
windows:
用记事本打开bkupmysql.bat
set dbuser=root #设置数据库用户,一般不需要修改
set dbpass=passwd #设置数据库超管密码,需要修改为实际的密码
set DaysAgo=7 #设置保留天数
set mysqlpath=d:\mysqlbak #设置备份文件保存路径,一般不需要修改
set mysql=D:\SOFT_PHP_PACKAGE\mysql\bin\mysql.exe #设置备份文件保存路径,5.6版本需要修改路径
set mysqldump=D:\SOFT_PHP_PACKAGE\mysql\bin\mysqldump.exe #设置mysql执行文件路径,5.6版本需要修改路径
set logfile=d:\bkinfo.log #设置备份成功与否日志文件,一般不需要修改
set logfail=d:\bkfail.log #设置失败过程详细日志文件,一般不需要修改
注意:若创建的数据库中包含Database,test,information_schema,performance_schema,mysql字符,
请删除
findstr -v "^Database$ ^Database$ ^test$ ^information_schema$ ^performance_schema$ ^mysql$"
中对应的名称
linux:
vi bkupmysql.sh
按i进入编辑模式
dbuser='root' #设置数据库用户,一般不需要修改
dbpass='passwd' #设置数据库超管密码,需要修改为实际的密码
DaysAgo='7' #设置保留天数
mysqlpath='/home/backup/mysql' #设置备份文件保存路径,一般不需要修改
mysql='/www/wdlinux/mysql/bin/mysql' #设置mysql执行文件路径,一般不需要修改
mysqldump='/www/wdlinux/mysql/bin/mysqldump' #设置mysqldump执行文件路径,一般不需要修改
exclude_db="^Database$\|^mysql$\|^information_schema$\|^performance_schema$\|^test$"
#设置禁止备份的数据库名,一般不需要修改
logfile='/root/bkinfo.log' #设置备份成功与否日志文件,一般不需要修改
#logfail='/root/bkfail.log' #设置失败过程详细日志文件,一般不需要修改
主要修改数据库密码,其他可保持默认
修改完成后按ESC键返回,按:wq保存退出
4.添加任务计划
每天凌晨4点执行
windows:
cmd下执行
schtasks /create /tn "bkupmysql" /ru system /tr d:\bkupmysql.bat /sc daily /st 04:00
linux:
crontab -e
按i进入编辑状态,在末尾换行,复制以下内容,其中/root/bkfail.log为失败详细日志保存路径
0 4 * * * /bin/sh /root/bkupmysql.sh >>/root/bkfail.log 2>&1
按ESC键返回,按:wq保存退出
提示:以上脚本仅供参考,实际应用可能因环境、权限、配置等不同造成不能备份或其他异常,我司不对此负责,请根据实际情况自行调整。
评论