Desculpe, é um pouco tarde, mas o seguinte parece funcionar bem para mim. O script despeja o banco de dados e compacta a saída usando 7-Zip.
1) Criar script de backup (backup.bat)
@echo off
REM move into the backups directory
CD C:\database_backups
REM Create a file name for the database output which contains the date and time. Replace any characters which might cause an issue.
set filename=database %date% %time%
set filename=%filename:/=-%
set filename=%filename: =__%
set filename=%filename:.=_%
set filename=%filename::=-%
REM Export the database
echo Running backup "%filename%"
C:\mongodb\mongodump --out %filename%
REM ZIP the backup directory
echo Running backup "%filename%"
"c:\Program Files\7-Zip\7z.exe" a -tzip "%filename%.zip" "%filename%"
REM Delete the backup directory (leave the ZIP file). The /q tag makes sure we don't get prompted for questions
echo Deleting original backup directory "%filename%"
rmdir "%filename%" /s /q
echo BACKUP COMPLETE
2) Agende o backup
- Abra o Gerenciamento do Computador
- Vá para Agendador de Tarefas e selecione Criar tarefa .
- No Geral guia, insira uma descrição e selecione Executar se o usuário está conectado ou não se você quiser que a tarefa seja executada à noite.
- Nos gatilhos guia, selecione quando deseja que a tarefa seja executada.
- Nas ações guia, crie uma nova ação que aponte para seu script em lote.