database #mongodb
#База данных #mongodb
Вопрос:
У меня много баз данных, я могу удалять их одну за другой. Но баз данных слишком много, как я могу удалить их сразу.
Например, удалите все базы данных, которые имеют имя recommend
.
Ответ №1:
Вы можете использовать db.adminCommand
db.adminCommand("listDatabases").databases.forEach( function (d) {
if (d.name == "recommend")
db.getSiblingDB(d.name).dropDatabase();
})
С помощью этого вы можете добавить несколько условных обозначений для конкретной базы данных.
Вот список доступных команд: https://docs.mongodb.com/manual/reference/command/nav-administration /
Здесь больше документации об этом: https://docs.mongodb.com/manual/reference/method/db.adminCommand /
Ответ №2:
listDatabases
Команда возвращает все базы данных, вы можете повторить этот список, чтобы удалить те, которые соответствуют критериям.
В оболочке mongo это может выглядеть так:
db.adminCommand("listDatabases").databases.
filter(d => d.name.match(/recommend/)).
map(d => db.getSiblingDB(d.name).dropDatabase())