Lokasi database mongodb di mac

91

Saya agak baru mengenal mac dan juga mongodb.

Saya ragu aneh, mengakses database yang dibuat menggunakan mongodb di mac?

Saya tahu, di windows ada folder bernama c: \ data \ db, tempat file database saya disimpan.

Bagaimana dan di mana di mac, database disimpan.

Saya ingat melakukan sesuatu seperti

sudo mkdir -p /data/db
sudo chown `id -u` /data/db

untuk membuat folder seperti itu di mac, tetapi saya tidak menemukan file database apa pun di folder ini, meskipun saya membuat database.

Di mana file database disimpan di mac?

Bantuan apa pun akan sangat dihargai.

Spanyol 89
sumber

Jawaban:

93

Direktori data default untuk MongoDB adalah /data/db.

Ini dapat diganti dengan dbpathopsi yang ditentukan pada baris perintah atau dalam file konfigurasi.

Jika Anda menginstal MongoDB melalui manajer paket seperti Homebrew atau MacPorts, penginstalan ini biasanya membuat direktori data default selain / data / db dan menyetel dbpath di file konfigurasi.

Jika dbpath diberikan mongodsaat startup Anda dapat memeriksa nilainya di mongoshell:

db.serverCmdLineOpts()

Anda akan melihat nilai seperti:

"parsed" : {
    "dbpath" : "/usr/local/data"
},
Stennie
sumber
1
Perlu juga dicatat bahwa mongodserver Anda tidak harus dijalankan sebagai rootpengguna. Anda perlu memastikan bahwa izin direktori data Anda menyertakan akses baca / tulis untuk akun pengguna yang digunakan mongodserver.
Stennie
1
Ketika saya memasukkan getCommandLineOpts (), saya mendapatkan sesuatu seperti `ReferenceError: getCommandLineOpts tidak ditentukan (shell): 1´. Ada bantuan ??
Spaniard89
4
Versi MongoDB apa yang Anda gunakan? Anda harus bisa memeriksanya dengan db.serverStatus().version. Saya yakin shell helper getCommandLineOpts()telah ditambahkan di MongoDB 2.0. Anda juga bisa mencoba: db.getSiblingDB("admin").runCommand({getCmdLineOpts:1}).
Stennie
Saya menggunakan versi 2.2.2, ketika saya mencoba db.getSiblingDB("admin").runCommand({getCmdLineOpts:1})saya mendapat sesuatu seperti { "argv" : [ "./bin/mongod" ], "parsed" : { }, "ok" : 1 }Apakah itu berarti, direktori database saya tidak disetel ??
Spaniard89
Saya mendapatkannya sobat, saya membuat folder bernama data di root dan subfolder db. Sekarang menunjukkan jalannya. Terima kasih banyak atas bantuannya.
Spaniard89
194

Jika mongodb diinstal melalui Homebrew lokasi defaultnya adalah:

/ usr / local / var / mongodb

Lihat jawaban dari @simonbogarde untuk lokasi file menarik lainnya yang berbeda saat menggunakan Homebrew.

Mark Edington
sumber
Saya mencari cahaya dalam kegelapan dengan memeriksa rumus di github.com/Homebrew/homebrew/blob/master/Library/Formula/… terima kasih.
alexserver
135

Terima kasih @Mark, saya terus melupakan ini lagi dan lagi. Setelah menginstal MongoDB dengan Homebrew:

  • Database disimpan dalam / usr / local / var / mongodb / direktori
  • File mongod.conf ada di sini: /usr/local/etc/mongod.conf
  • Log mongo dapat ditemukan di / usr / local / var / log / mongodb /
  • Biner mongo ada di sini: / usr / local / Cellar / mongodb / [version] / bin
simonbogarde.dll
sumber
Ini memukul paku di kepala. Terima kasih
Mark Pieszak - Trilon.io
2
Ketika saya memeriksa / usr / local / var / mongodb / , direktori tersebut kosong. Dan tidak, saya belum mengubah dbpath default mongoldb. Bisakah Anda membantu saya menemukan file database?
Nishi Bangar
Tambahkan tautan simbolis untuk itu: sudo ln -s / usr / local / var / mongodb / data / db
TheJeff
Sepertinya saya tidak punya folder etcdi dalamnya /usr/local/. Di mana letak file konfigurasi atau bagaimana saya bisa mengetahuinya lol?
Reinier68
25

Saya mengalami masalah yang sama, dengan versi 3.4.2

untuk menjalankannya (jika Anda menginstalnya dengan homebrew) jalankan proses seperti ini:

$ mongod --dbpath /usr/local/var/mongodb
Runnerdave
sumber
Solusi ini memecahkan masalah saya setelah meningkatkan ke v4.2.5 melalui Homebrew.
Matthias Hagemann
10

Saya baru saja menginstal mongodb 3.4 dengan homebrew . (Brew install mongodb) Ini mencari / data / db secara default.

https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/

Berikut adalah hasil eksekusi mongod.

csonuryilmaz.dll
sumber
9
Ini jika Anda memulai mongodlangsung dari terminal. Jika Anda menggunakan brew services start mongodb, proses akan menggunakan file konfigurasi di /usr/local/etc/mongod.confmana, pada gilirannya, menentukan dbPathdari/usr/local/var/mongodb
Molomby
Terima kasih @Molomby atas kontribusinya. Saya tidak memulai seperti itu, saya bahkan tidak tahu seperti itu. :)
csonuryilmaz
1

Env : macOS Mojave 10.14.4

Pasang : homebrew

Lokasi :/usr/local/Cellar/mongodb/4.0.3_1

Catatan : Jika update versi by brew upgrade mongo, folder 4.0.4_1tersebut akan dihapus dan diganti dengan folder versi baru

jyjin
sumber