Wo befindet sich der Mongo-Datenbankordner im Dateisystem?

19

Ich benutze Ubuntu 16.04. Ich habe eine Datenbank eingerichtetMongoDB . Wenn ich es starte (mit mongodBefehl), heißt es, dass sich die Datenbank unter /data/db( dbpath=/data/db) befindet.

Die Datenbank funktioniert gut. Aber im Datei-Explorer kann ich diesen Ordner nicht finden. Ich habe reingeschautComputer Ordner und in Home( Computer/home/<my name>) Ordner .

Ich habe auch versteckte Dateien und Ordner mit Strg + H angezeigt.

Wie finde ich meinen Datenbankordner?

Croraf
quelle

Antworten:

24

Sie sollten in der Lage sein, den Speicherort in der Konfigurationsdatei zu finden: /etc/mongod.conf

grep dbPath /etc/mongod.conf

Laut mongodb docs :

Der Standardpfad ist /data/dbdirectory

Standardmäßig wartet MongoDB auf Verbindungen von Clients an Port 27017 und speichert Daten im Verzeichnis / data / db.

Wenn dbPathgesetzt, verwendet der Mongodb das von angegebene VerzeichnisdbPath

Wenn Sie mongodDatendateien unter einem anderen Pfad als dem /data/db angegebenen speichern möchten , geben Sie a an dbPath. Das dbPathmuss existieren, bevor Sie anfangen mongod. Wenn es nicht vorhanden ist, erstellen Sie das Verzeichnis und die Berechtigungen, damit mongodDaten in diesen Pfad gelesen und geschrieben werden können. Weitere Informationen zu Berechtigungen finden Sie in der Dokumentation zu Sicherheitsvorgängen.

Yaron
quelle
1
Ich habe /etc/mongod.conf gefunden (beachten Sie, dass es keinen Buchstaben 'b' gibt). Dort steht: storage: dbPath: / var / lib / mongodb. Und dieser Ordner sieht aus wie es die Datenbank sein könnte. Die Variable ist auch dbPath (Großbuchstabe 'P'). Aber warum zum Teufel, wenn ich mongod starte, heißt es dbpath = / data / db?
Croraf
@croraf - Dies /data/dbist der Standardwert des Pfads. Wenn dbPathdieser Wert festgelegt ist, überschreibt er diesen Wert. Beachten Sie, dass /data/dbder Ordner vorhanden sein und über die richtigen Eigentumsrechte / Berechtigungen verfügen muss, um als tatsächlicher Pfad verwendet zu werden. Siehe aktualisierte Antwort mit Link zu Mongodb Docs
Yaron
Vielen Dank! Das Problem ist, dass der Befehl mongod "MongoDB starting: pid = 2722 port = 27017 dbpath = / data / db 64-Bit-Host = korisnik-Lenovo-Y520-15IKBN" ausgibt und angibt, dass dbpath / data / db ist. Obwohl dies der Standardpfad sein könnte, sollte der Befehl db starting den tatsächlichen Pfad angeben, in meinem Fall / var / lib / mongodb.
Croraf
2
@croraf /etc/mongod.confKonfiguration wird nur , wenn Sie verwendet starten MongoDB als Dienst oder explizit übergeben diese in der Befehlszeile: mongod --config /etc/mongod.conf. Wenn Sie mongodohne Optionen beginnen, wird der Standardwert von /data/dbverwendet. Wenn Sie mongodals Dienst auf Ubuntu starten , dbPathwird wie in /etc/mongod.conf( /var/lib/mongodbstandardmäßig) angegeben. In der Regel möchten Sie MongoDB als Service verwalten, um sicherzustellen, dass zwischen den Aufrufen eine konsistente Konfiguration verwendet wird.
Stennie
@Stennie Ja, es scheint, dass Mongod beim Starten des Betriebssystems gestartet wird (was Sie "als Dienst" nennen). Das hat mich verwirrt. Ich werde heute prüfen, aber wahrscheinlich mongod gibt Fehler, dass der Port bereits gebunden ist.
Croraf
1

Erlauben Sie mir, auch diese Klarstellung für die obige Frage zu machen, obwohl sie bereits einige Antworten geliefert hat:

Wenn Sie Linux (Ubuntu) verwenden und Mongodb installieren, wird es automatisch konfiguriert und standardmäßig ausgeführt. Der Standard-Datenbankpfad befindet sich in mongodb.conf. Wenn Sie in die Datei schauen, sehen Sie die folgenden Zeilen:

   # Where to store the data
     bdpath=/var/lib/mongodb

Nun, basierend auf mongodb doc :

Der Standardpfad ist das /data/dbVerzeichnis [should be] , aber wenn der Ordner nicht vorhanden ist, wird mongodb über den in der Datei mongodb.conf angegebenen Pfad ausgelöst.

Was ist zu tun:

  1. Halt deinen Mongodb an
  2. Erstellen Sie Ihren Standarddatenordner
  3. starte mongodb neu: diesmal startet es von deinen erstellten daten.
user1848069
quelle
0

Dies liegt daran, dass der angezeigte "Stamm" nicht der echte Stamm ist, sondern der Stamm Ihrer Homepage. Wenn Sie sich im Datei-Explorer auf Ihrer "Stamm" -Homepage befinden, drücken Sie backspace, um zum übergeordneten Ordner zu wechseln.

Carlos Villalta
quelle
-1

Versuchen Sie, file:///data/db/den Browser (Chrome oder Fire-Fox) einzugeben. Sie können die Dateien und Sammlungen sehen, wenn Sie sie mongodbim System installiert haben , aber alle Dateien wären verschlüsselt. Sie können sie nicht in einem Editor lesen.

Deepu Rohilla
quelle