windows server 2012 R2下备份mysql数据库,并将备份文件发送到其余主机进行异地备份
程序员文章站
2022-04-09 12:41:34
...
废话少说,直接贴脚本
rem ******MySQL backup shell******
@echo off
::目录判断
SET GenFolder=c:\mysqlbackup
if not exist %GenFolder% (
echo %GenFolder%目录不存在,已创建该目录!
md %GenFolder%
) else (
echo 目录%GenFolder%目录已存在,无需创建!
)
::删除30天前的备份数据(因为我们的执行计划是3天备份一次,30天就有10次备份数据)
forfiles /p "c:\mysqlbackup" /m *backup_*.sql -d -30 /c "cmd /c del /f @path"
::设置时间变量
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%"
::进入mysql安装目录的bin目录下
cd C:\Program Files\MySQL\MySQL Server 5.7\bin\
::执行备份操作
mysqldump --opt --single-transaction=TRUE --user=root --password=zpmc --host=127.0.0.1 --protocol=tcp --port=3306 --default-character-set=utf8 --single-transaction=TRUE --routines --events "数据库名称" > c:\mysqlbackup\"数据库名称"_backup_%Ymd%.sql
net use \\10.28.xxx.xx1 "密码" /user:"用户1"
xcopy C:\mysqlbackup\* \\10.28.xxx.xx1\mysqlbackup\ /s/d/y
net use \\10.28.xxx.xx1 /del
net use \\10.28.xxx.xx2 "密码" /user:"用户2"
xcopy C:\mysqlbackup\* \\10.28.xxx.xx2\mysqlbackup\ /s/d/y
net use \\10.28.xxx.xx2 /del
@echo on
::pause
上述脚本实现的功能是在本机C盘下的backup文件夹下备份数据,并发送到另外两台机器上进行远程备份(备份前会先删除30天之前的文件。)
脚本书写完毕,接下来就是将脚本设置为定时计划(看着截图一步一步走)
上一篇: Python3.5实现的罗马数字转换成整数功能示例
下一篇: node.js实现带进度条的多文件上传