MySQL自动备份和下载备份到指定位置

本文介绍了如何在Windows Server 2012环境下,结合MySQL 8设置自动数据库备份,并通过FTP自动下载备份文件到客户端指定位置,详细阐述了创建批处理脚本和计划任务的步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经常手动获取服务器数据库太麻烦,而且容易影响到服务器配置,要是让数据库自动备份并定时下载到客户端指定位置就好了!

一、环境:

win sever2012+mysql 8

二、自动备份

命令行.bat脚本

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"  //可选,指定日期格式

//需要调用MySQL自带的MySQLdump程序

"D:/mysql5.7.23/bin/mysqldump" --opt -u 用户名--password=密码 数据库名 > "D:/指定位置/db_%Ymd%.sql"  2>> "D:\test\log.txt" 

//%Ymd%:上面定义的日期,用于文件名
//指定一个备份的目录并设定备份文件名,并打印错误日志到指定文件:2>>file



//调用7z压缩程序将备份文件压缩到一个指定目录
"7z.exe" a "D:\test\db_%Ymd%.zip" "D:/db_backup/db_%Ymd%.sql"


//forfiles命令:删除文件,这里只保留一份.sql文件
forfiles /p " D:\备份位置" /s /m *.sql /d -1 /c "cmd /c del @path"

在wiodows计划程序创建计划任务:

需要注意的是,创建计划任务时,配置要选择当前平台,否则任务无法运行:

三、自动下载

自动下载的脚本需要配置在客户端,用ftp实现(服务端发布ftp网站同理):

这是ftp.txt文本:

open 服务器地址
用户名
密码
prompt off
lcd D:\DBBackups\本地备份目录
mget *.zip     //要下载的文件
yes            //可选,部分环境需要yes确认一次下载命令
close
bye

然后配置一个.bat脚本,创建计划任务定时执行:

ftp -s:D:\ftp.txt 2>> D:\DBBackups\ResearchHome\FtpLog.txt

//ftp执行ftp.txt里的命令并将错误重定向输出

每天会定时备份数据库下来,效果:

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值