Подтвердить что ты не робот

Получить базы данных MongoDB в массиве JavaScript?

Я знаю, что в терминале MongoDB я могу запустить show dbs, чтобы увидеть доступные базы данных. Я хочу перечислить базы данных программным способом, чтобы я мог перебирать их и удалять некоторые из них на основе регулярного выражения.

Я пробовал db.runCommand("show dbs"), но не возвращал результаты итерации.

4b9b3361

Ответ 1

Основываясь на этом ответе http://groups.google.com/group/mongodb-user/browse_thread/thread/9b3568f3a3cf4271, я смог запрограммировать решение.

use admin
dbs = db.runCommand({listDatabases: 1})
dbNames = []
for (var i in dbs.databases) { dbNames.push(dbs.databases[i].name) }

Надеюсь, это поможет кому-то другому.

Ответ 2

Итерации над именами базы данных MongoDB:

> db.getMongo().getDBNames()
[
    "test",
    "admin",
    "local"
]
> db.getMongo().getDBNames
function () {
    return this.getDBs().databases.map(function (z) {return z.name;});
}

Ответ 3

Ниже будет создан массив имен базы данных:

var connection = new Mongo();
var dbNames = connection.getDBNames();