sql >> Base de Datos >  >> NoSQL >> MongoDB

Secuencia de comandos de MongoDB para realizar una copia de seguridad de la replicación configurada localmente en un servidor de Windows

Lo siento, es un poco tarde, pero lo siguiente parece funcionar bien para mí. El script vuelca la base de datos y comprime la salida usando 7-Zip.

1) Crear secuencia de comandos de copia de seguridad (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) Programar la copia de seguridad

  1. Abrir Administración de equipos
  2. Ir a Programador de tareas y seleccione Crear tarea .
  3. Sobre el General pestaña, ingrese una descripción y seleccione Ejecutar si el usuario ha iniciado sesión o no si desea que la tarea se ejecute de noche.
  4. Sobre los desencadenantes pestaña, seleccione cuándo desea que se ejecute la tarea.
  5. Sobre las acciones pestaña, cree una nueva acción que apunte a su secuencia de comandos por lotes.