123456789101112131415161718192021222324252627282930313233343536373839 |
- @echo off
- ::title DBAutobackup
- :: 过期文件删除,-7代表删除7天前的备份,请勿改成正数,否则无法备份
- set expirationDay=-7
- :: 执行时间点,参考值:0~23(24小时制)
- set baktime=0
- :: 数据库IP或域名地址,服务器地址本机无需修改
- set host="127.0.0.1"
- :: 数据库端口,服务器端口默认无需修改
- set port=9100
- set mongodumpPath=%~sdp0
- set intervaltime=100
- cd /d %mongodumpPath%
- if not exist %mongodumpPath%dump mkdir %mongodumpPath%dump
- :while
- if %time:~0,2% == %baktime% (
- if not exist %mongodumpPath%dump\%date:~0,4%-%date:~5,2%-%date:~8,2%.bak (
- echo Start backup
- mongodump /host:%host% /port:%port% /gzip /archive:%mongodumpPath%dump\%date:~0,4%-%date:~5,2%-%date:~8,2%.bak && echo backup success || echo backup error
- Forfiles /p %mongodumpPath%dump\ /d %expirationDay% /m *.bak /c "cmd /c del /q /f @file" 2>nul | cmd /c ""
- ) else (
- echo It has been backed up.
- )
- ) else (
- echo Current time is %time:~0,2%:%time:~3,2%,backup time is %baktime%:00.
- )
- timeout /t %intervaltime% /NOBREAK | cmd /c ""
- cls
- goto :while
|