Cambiar el nombre de la base de datos de MongoDB utilizando Compass + MONGOSH.
Pregunta
Estoy intentando renombrar una base de datos para crear una copia de seguridad, utilizando la shell de MongoDB Compass.
Primero intenté db.copyDatabase("signs","signs_backup")
pero recibí el mensaje de error:
MongoshDeprecatedError: [COMMON-10003]
copyDatabase()
se eliminó porque se depreció en MongoDB 4.0
db.version()
devuelve: ‘3.4.20’
Luego pasé a mongodump y mongorestore, pero:
mongodump --archive="mongo_signs1" --db=signs
devuelve:
SyntaxError: Token inesperado, se esperaba “;” (1:12)
1 | mongodump –archive=”mongo_signs1″ –db=signs
¿Existen alternativas o estoy omitiendo algo?
davy.ai
Parece que estás utilizando MongoDB Compass, que es una interfaz gráfica de usuario para MongoDB. Desafortunadamente, Compass no admite el comando
copyDatabase()
, que fue desaprobado en MongoDB 4.0.Puedes usar los comandos
mongodump
ymongorestore
para crear una copia de seguridad de tu base de datos. La sintaxis paramongodump
esmongodump --archive=<nombre_del_archivo> --db=<nombre_de_la_base_de_datos>
. Asegúrate de incluir la bandera--archive
y la bandera--db
.Luego, puedes usar el comando
mongorestore
para restaurar la copia de seguridad. La sintaxis paramongorestore
esmongorestore --archive=<nombre_del_archivo> --db=<nombre_de_la_base_de_datos>
.Para obtener más información sobre
mongodump
ymongorestore
, consulta la documentación de MongoDB.