Ini adalah kesalahan utama:
pengecualian di initAndListen:NonExistentPath:Direktori data /data/db tidak ditemukan., berhenti
Catalina memiliki perubahan yang mengejutkan:ia tidak mengizinkan perubahan pada direktori root (ini juga telah dibahas di utas forum):
% sudo mkdir -p /data/db
mkdir: /data/db: Read-only file system
Sayangnya, ini tidak disebutkan secara eksplisit dalam catatan rilis Catalina Apple, selain penyebutan singkat dalam fitur Catalina:
macOS Catalina berjalan dalam volume sistem khusus baca saja
Karena direktori /data/db
dikodekan sebagai default MongoDB, solusinya adalah dengan menentukan dbpath
yang berbeda yang tidak terletak di direktori root. Misalnya:
mongod --dbpath ~/data/db
Ini akan menempatkan data MongoDB di direktori home Anda. Pastikan saja jalur ~/data/db
benar-benar ada.
Metode alternatif
Metode alternatif adalah mengikuti petunjuk di Instal MongoDB Community Edition di macOS dengan memanfaatkan brew
:
brew tap mongodb/brew
brew install mongodb-community
Ini akan membuat beberapa file tambahan secara default:
- file konfigurasi (/usr/local/etc/mongod.conf)
- jalur direktori log (/usr/local/var/log/mongodb)
- jalur direktori data (/usr/local/var/mongodb)
Untuk menjalankan mongod
Anda juga dapat:
-
Jalankan perintah secara manual dari baris perintah (ini bisa disebut alias untuk kenyamanan):
mongod --config /usr/local/etc/mongod.conf
-
Jalankan MongoDB sebagai layanan menggunakan
brew services
. Perhatikan bahwa ini akan menjalankan MongoDB sebagai node mandiri (bukan set replika), jadi fitur yang bergantung pada oplog mis. changestreams tidak akan berfungsi kecuali Anda memodifikasimongod
file konfigurasi:brew services start mongodb-community