Me gustaría saber si hay un comando para eliminar todas las bases de datos de mi MongoDB.
Sé que si quiero eliminar solo una tabla de datos, solo necesito escribir el nombre de la base de datos como el código a continuación, pero no quiero tener que especificarlo.
mongo DB_NAME --eval 'db.dropDatabase();'
var mongo = db.getMongo(); mongo.getDBNames().forEach(function (dbname) { var db = mongo.getDB(dbname); db.dropDatabase(); });
Prueba este comando:
fuente
docker exec mongodb sh -c "mongo --quiet --eval 'db.getMongo().getDBNames().forEach(function(i){db.getSiblingDB(i).dropDatabase()})'"
También puede hacer esto con un simple comando de mongo:
fuente
Agregando a la respuesta de @ ALoR, para mayor comodidad, puede poner lo siguiente en ~ / .mongorc.js
Luego, en el caparazón de mongo, simplemente puedes hacer
De los documentos:
fuente
Guarde esto en drop_all_dbs.js:
Ahora puedes ejecutar:
y todas las bases de datos (excepto las de administración y local) se eliminarán.
Esta respuesta es una copia de la de ALoR, solo corrige la caída de la base de datos del sistema
fuente
Puede hacerlo fácilmente a través del controlador oficial de c #:
fuente
var mongo = db.getMongo(); mongo.getDBNames().filter(n => n != 'admin' && n != 'local' && n != 'config').forEach(function (dbname) { var db = mongo.getDB(dbname); db.dropDatabase(); });
Este es seguro para copiar y ejecutar en mongoshell. Créditos a todas las respuestas anteriores. Simplemente excluya la base de datos 'config' también.
fuente
Es tan fácil como
O puede iniciar una sesión de mongo en su terminal y escribir
Que es exactamente lo mismo.
fuente