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 memodifikasimongodfile konfigurasi:brew services start mongodb-community