自动备份mysql并删除7天前备份1.远程连接服务器 先参看https://faq.myhostadmin.net/faq/listagent.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保存退出 提示:以上脚本仅供参考,实际应用可能因环境、权限、配置等不同造成不能备份或其他异常,我司不对此负责,请根据实际情况自行调整。
|