Di mana folder database mongo pada sistem file


19

Saya menggunakan Ubuntu 16.04. Saya sudah menyiapkan basis data MongoDB. Ketika saya memulainya (dengan mongodperintah) dikatakan bahwa basis data terletak di /data/db( dbpath=/data/db).

Basis data berfungsi dengan baik. Tetapi dalam file explorer saya tidak dapat menemukan folder itu. Saya telah melihat Computerfolder dan folder Home( Computer/home/<my name>).

Saya juga menunjukkan file dan folder tersembunyi dengan Ctrl + H.

Bagaimana saya bisa menemukan folder basis data saya?

Jawaban:


24

Anda harus dapat menemukan lokasi di file konfigurasi: /etc/mongod.conf

grep dbPath /etc/mongod.conf

Menurut mongodb docs :

Path default adalah /data/dbdirektori

Secara default, MongoDB mendengarkan koneksi dari klien pada port 27017, dan menyimpan data dalam direktori / data / db.

Jika dbPathdiatur, mongodb akan menggunakan direktori yang ditentukan olehdbPath

Jika Anda ingin mongodmenyimpan file data di jalur selain /data/db yang dapat Anda tentukan a dbPath. The dbPathharus ada sebelum Anda mulai mongod. Jika tidak ada, buat direktori dan izin sehingga mongoddapat membaca dan menulis data ke jalur ini. Untuk informasi lebih lanjut tentang izin, lihat dokumentasi operasi keamanan.


1
Saya menemukan /etc/mongod.conf (perhatikan tidak ada huruf 'b'). Di sana tertulis: storage: dbPath: / var / lib / mongodb. Dan folder itu sepertinya adalah basis data. Variabelnya adalah dbPath (huruf besar 'P'). Tapi lalu kenapa sih ketika saya mulai mongod katanya dbpath = / data / db?
croraf

@croraf - /data/dbadalah nilai default path, jika dbPathdiset, itu menimpa nilai ini. Perhatikan bahwa untuk digunakan /data/dbsebagai jalur aktual, folder harus ada dan memiliki kepemilikan / izin yang benar. lihat jawaban yang diperbarui dengan tautan ke mongodb docs
Yaron

Terima kasih! Masalahnya adalah output perintah mongod "MongoDB mulai: pid = 2722 port = 27017 dbpath = / data / db host 64-bit = korisnik-Lenovo-Y520-15IKBN" yang menunjukkan bahwa dbpath adalah / data / db. Walaupun ini bisa menjadi path default, perintah awal db harus mengindikasikan path sebenarnya, dalam kasus saya / var / lib / mongodb.
croraf

2
@croraf /etc/mongod.confkonfigurasi hanya digunakan jika Anda Mulai MongoDB sebagai layanan atau eksplisit lulus ini pada baris perintah: mongod --config /etc/mongod.conf. Jika Anda memulai mongodtanpa opsi apa pun, default /data/dbakan digunakan. Jika Anda memulai mongodsebagai layanan di Ubuntu, dbPathakan seperti yang ditentukan dalam /etc/mongod.conf( /var/lib/mongodbsecara default). Biasanya Anda ingin mengelola MongoDB sebagai layanan untuk memastikan konfigurasi yang konsisten digunakan di antara permintaan.
Stennie

@Sennie Ya sepertinya mongod dimulai pada boot OS (apa yang Anda sebut 'sebagai layanan'). Ini membingungkan saya. Saya akan memeriksa hari ini tetapi mungkin menjalankan mongod memberikan kesalahan bahwa port sudah terikat.
croraf

1

Untuk pertanyaan di atas, meskipun mereka sudah memberikan beberapa jawaban, izinkan saya untuk membawa klarifikasi ini juga:

Saat menggunakan linux (Ubuntu), ketika Anda menginstal mongodb, secara otomatis dikonfigurasi dan dijalankan secara default. Dbpath default terletak di mongodb.conf. Ketika Anda melihat ke dalam file, Anda akan melihat baris berikut:

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

Sekarang, berdasarkan pada mongodb doc :

Path default adalah [harus] /data/dbdirektori, tetapi jika folder tidak ada, mongodb akan memecat dari path yang diberikan dalam file mongodb.conf.

Apa yang harus dilakukan:

  1. hentikan mongodb kamu
  2. buat folder data default Anda
  3. restart mongodb: kali ini akan dimulai dari data Anda dibuat.

0

Itu karena "root" yang Anda lihat, bukan root asli, itu root dari rumah Anda, di File explorer, ketika Anda berada di halaman 'root' Anda, tekan backspaceuntuk pergi ke folder induk.


-1

Coba ketikkan file:///data/db/browser (chrome atau fire-fox). Anda akan dapat melihat file dan koleksi jika Anda telah mongodbmenginstal dalam sistem, tetapi semua akan dienkripsi Anda tidak dapat membacanya di editor.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.