win版mysql数据库计划任务自动备份并删除30天前备份

新建一BAT文件,填入下面代码,建一计划任务定时执行这个bat。

@echo off
::删除超过30天的备份数据
forfiles /p “D:\db_backup” /m backup.sql -d -30 /c “cmd /c del /f @path”
::定义时间
set “data_time=%date:0,4%%date:5,2%%date:8,2%%time:0,2%%time:3,2%%time:6,2%%time:~9,2%”
::备份数据库命令
D:/mysql56/bin/mysqldump.exe --opt -u 数据库用户名 --password=数据库密码 数据库名 > D:/db_backup/mysql_backup_%data_time%.sql
@echo on

上面代码存在BUG,白天能备份成功凌晨不成功,原因是:通过 %time:~0,2% 获取小时,如果当前小时为个位数,即 0-9 点时,小时前会出现 空格 :
解决方法参考:https://blog.csdn.net/ckth47350/article/details/100252409

想省事的话就调整备份时间在:10:00–0:00 之间。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值