MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB не може да намери директория с данни след надстройка до Mac OS 10.15 (Catalina)

Това е основната грешка:

изключение в initAndListen:NonExistentPath:Директорията с данни /data/db не е намерена., прекратява се

Catalina има изненадваща промяна:няма да позволи промени в основната директория (това също беше обсъдено във форумна тема):

% sudo mkdir -p /data/db
mkdir: /data/db: Read-only file system

За съжаление, това не е посочено изрично в бележките за изданието на Apple Catalina, освен кратко споменаване в функциите на Catalina:

macOS Catalina работи в специален системен том само за четене

Тъй като директорията /data/db е кодиран като MongoDB по подразбиране, заобиколно решение е да посочите различен dbpath който не се намира в основната директория. Например:

mongod --dbpath ~/data/db

Това ще постави данните на MongoDB във вашата домашна директория. Просто се уверете, че пътят ~/data/db всъщност съществува.

Алтернативен метод

Алтернативен метод е да следвате инструкциите в Инсталирайте MongoDB Community Edition на macOS, като използвате brew :

brew tap mongodb/brew
brew install mongodb-community

Това ще създаде някои допълнителни файлове по подразбиране:

  • конфигурационния файл (/usr/local/etc/mongod.conf)
  • пътят към директорията на журнала (/usr/local/var/log/mongodb)
  • пътят към директорията с данни (/usr/local/var/mongodb)

За да стартирате mongod можете да:

  • Изпълнете командата ръчно от командния ред (това може да бъде псевдоним за удобство):

    mongod --config /usr/local/etc/mongod.conf
    
  • Стартирайте MongoDB като услуга, като използвате brew services . Имайте предвид, че това ще стартира MongoDB като самостоятелен възел (не набор от реплика), така че функции, които зависят от oplog, напр. changestreams няма да работи, освен ако не промените mongod конфигурационен файл:

    brew services start mongodb-community
    


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Зареждането на частични части е неуспешно на сървъра JS

  2. Внедрете функция за автоматично довършване с помощта на търсене в MongoDB

  3. MongoDB чрез Mongoose JS - Какво е findByID?

  4. 2 начина за ограничаване на документите, върнати в MongoDB

  5. Mongodb concat int и низ