windows服务器无需安装mysql定时备份远程服务器mysql

windows服务器无需安装mysql定时备份远程服务器mysql

本人有一台windows服务器和一台Linux服务器,Linux服务器上部署了mysql,windows服务器上没有。

需求如下:win服务器不需要安装mysql,定时备份Linux服务器的mysql。

查了好久,得知MySQL数据库自带备份与恢复工具:mysqldump与mysql.exe,在别的安装了mysql的电脑里找到mysqldump.exe,提取出来。

执行mysqldump.exe还需要一些dll,以下附件提供了所有需要的东西。

附件包含东西如下:

windows服务器无需安装mysql定时备份远程服务器mysql

配置文件说明:

配置文件说明

备份工具有了,接下来就要写bat脚本了

bat脚本:

rem auther:cyy
rem ******MySQL backup start********
@echo off


forfiles /p "C:\backup\mysql\tootootool" /m backup_*.sql -d -30 /c "cmd /c del /f @path"
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"
"C:\backup\mysql\tools\mysqldump.exe" --defaults-extra-file=C:\backup\mysql\tools\my.cnf tootootool > "C:\backup\mysql\tootootool\backup_%Ymd%.sql"


@echo on
rem ******MySQL backup end********

以下是代码解释:

// 代码解释:
// 删除该文件夹下30天以前的文件
forfiles /p "C:\backup\mysql\tootootool" /m backup_*.sql -d -30 /c "cmd /c del /f @path"
// 获取当前的时间戳
set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%"
// 执行mysqldump.exe,配置my.conf文件,和输出的文件名
"C:\backup\mysql\tools\mysqldump.exe" --defaults-extra-file=C:\backup\mysql\tools\my.cnf tootootool > "C:\backup\mysql\tootootool\backup_%Ymd%.sql"

有多个数据库备份可以多执行几次

备份多个数据库

在win服务器里新建定时任务

定时任务新建
定时触发任务
执行脚本

备份效果:(删除30天以前的代码好像失效,但是不影响)

备份效果

完成!

原文链接:,转发请注明来源!

发表评论