Ich weiß, wie alle Sammlungen in einer bestimmten Datenbank aufgelistet werden , aber wie liste ich alle verfügbaren Datenbanken in der MongoDB-Shell auf?
Ich weiß, wie alle Sammlungen in einer bestimmten Datenbank aufgelistet werden , aber wie liste ich alle verfügbaren Datenbanken in der MongoDB-Shell auf?
Antworten:
Das Auflisten aller Datenbanken in der MongoDB-Konsole verwendet den Befehl show dbs.
Weitere Informationen hierzu finden Sie in den Mongo Shell-Befehlshelfern , die in der Mongo-Shell verwendet werden können.
dbdie aktuelle Datenbank angezeigt wird test, dies jedoch nicht über einen der Befehle auf dieser Seite aufgeführt ist, die hier erläutert werden. Stackoverflow.com/q/38726310/73226
mongoin der Befehlszeile eingeben ( mongo --nodbum keine Verbindung zu einer Datenbank
show dbsweil ich, als ich zu den Dokumenten ging, den show dbsBefehl einfach nirgendwo finden konnte. Die "Dokumente" können manchmal ziemlich frustrierend sein.
--eval, sondern nur in einer interaktiven Shell. Die Optionen dieser Antwort funktionieren (das Ausgabeformat ist jedoch unterschiedlich) stackoverflow.com/a/32192253/1837991
Fügen Sie für die MongoDB-Shell-Version 3.0.5 den folgenden Befehl in die Shell ein:
db.adminCommand('listDatabases')
oder alternativ:
db.getMongo().getDBNames()
mongo admin --quiet -u <mongodb_admin> -p [<password>] --eval 'db.getMongo().getDBNames().forEach(function(db){print(db)})'hth
Für die Datenbankliste:
show databases
show dbs
Für Tabelle / Sammlungsliste:
show collections
show tables
db.getCollectionNames()
Über die Befehlszeile
mongo --quiet --eval "printjson(db.adminCommand('listDatabases'))"
das gibt Ausgabe
{
"databases" : [
{
"name" : "admin",
"sizeOnDisk" : 978944,
"empty" : false
},
{
"name" : "local",
"sizeOnDisk" : 77824,
"empty" : false
},
{
"name" : "meteor",
"sizeOnDisk" : 778240,
"empty" : false
}
],
"totalSize" : 1835008,
"ok" : 1
}
Zum Auflisten der Mongodb-Datenbank auf der Shell
show databases //Print a list of all available databases.
show dbs // Print a list of all databases on the server.
Einige grundlegendere Befehle
use <db> // Switch current database to <db>. The mongo shell variable db is set to the current database.
show collections //Print a list of all collections for current database.
show users //Print a list of users for current database.
show roles //Print a list of all roles, both user-defined and built-in, for the current database.
Ich habe eine Lösung gefunden, bei der admin () / andere nicht funktionierten.
const { promisify } = require('util');
const exec = promisify(require('child_process').exec)
async function test() {
var res = await exec('mongo --eval "db.adminCommand( { listDatabases: 1 }
)" --quiet')
return { res }
}
test()
.then(resp => {
console.log('All dbs', JSON.parse(resp.res.stdout).databases)
})
test()
show dbsin der Mongo-Konsole. Bitte gehen Sie denuseful linksAbschnitt im Mongodb-Tag-Wiki durch , bevor Sie eine Frage stellen. Dies kann Ihnen manchmal helfen, schneller zu einer Lösung zu gelangen.