Встановлення MongoDB з Homebrew


88

Я відносно новачок у MongoDB і намагаюся встановити MongoDB на своєму Mac за допомогою Homebrew, але я отримую таку помилку:

Error: No available formula with the name "mongodb" 
==> Searching for a previously deleted formula (in the last 
month)...
Warning: homebrew/core is shallow clone. To get complete history 
run:
  git -C "$(brew --repo homebrew/core)" fetch --unshallow

Error: No previously deleted formula found.
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
==> Searching taps...
==> Searching taps on GitHub...
Error: No formulae found in taps.

brew update Тоді я побіг brew install mongodb


Це насправді не помилка, ви намагаєтесь встановити пакет (формулу), який не існує. Ви шукали рішення? В офіційних документах мають правильну командний рядок.
bfontaine

Відповіді:


255

Формула mongodbбула вилучена з доморощеного ядра. Перевірте pr-43770 від homebrew-core

Нашим користувачам: якщо ви прийшли сюди через те, що mongodb перестав працювати для вас, ми видалили його з основних формул Homebrew, оскільки він був перенесений на ліцензію, що не є відкритим кодом .

На щастя, команда mongodb підтримує власний кран Homebrew. Ви можете видалити старий mongodb і встановити новий з нового крана.

brew services stop mongodb
brew uninstall mongodb

brew tap mongodb/brew
brew install mongodb-community
brew services start mongodb-community

Перевірте mongodb / homebrew-brew для отримання додаткової інформації.


1
Працював 12 вересня 2019 р.
TJBlackman

Гарний опис! Дякую!
Інфінтій

1
Працював 6. листопада 2019
PlsWork,

@PaulVu ви повинні позначити це як правильну відповідь.
капітанрад

1
@MattHagemann Можливо, ви зіпсували справи. Розташування бази даних за замовчуванням - /usr/lobal/var/mongodbце може підтвердити brew cat mongodb-comunnity. І не використовуйте brew із sudo, який змінює власника файлів пакунків та доставляє вам більше проблем. Я колись пояснив погане sudo brew тут .
Сімба

9

спочатку встановіть mongoldb

brew tap mongodb/brew

По-друге, встановіть за допомогою цієї команди. mangodb успішно встановлено

brew install mongodb-community@4.0 

Ви отримаєте результат

==> CaveatsTo have launchd start mongodb/brew/mongodb-community now and restart at login:
  brew services start mongodb/brew/mongodb-community
Or, if you don't want/need a background service you can just run:
  mongod --config /usr/local/etc/mongod.conf
==> Summary
🍺  /usr/local/Cellar/mongodb-community/4.2.2: 21 files, 274.5MB, built in 2 minutes 46 seconds
brew services start mongodb/brew/mongodb-community
==> Successfully started `mongodb-community` (label: homebrew.mxcl.mongodb-commu

5

Спробуйте цей код у своєму терміналі:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

І потім:

brew tap mongodb/brew  

Нарешті:

brew install mongodb-community@4.0

Можливо, вам також доведеться додати mongoвиконуваний файл до свого шляху або додати його як псевдонім, наприклад export PATH=$PATH:/usr/local/Cellar/mongodb-community@4.0/4.0.13/bin/абоalias mongo=/usr/local/Cellar/mongodb-community@4.0/4.0.13/bin/mongo
Everett

Тоді як запустити монго демона? Я маю на увазі "mongod" -подібну команду ??
Хаджар Елкуміхі,

0

У MacOs мені Каталіна не працює належним чином.

Після встановлення ( https://zellwk.com/blog/install-mongodb/ ) мені довелося додати дозвіл на "/tmp/mongodb-27017.sock"

sudo chown -R `id -un` /tmp/mongodb-27017.sock

і команда "mongod", схоже, ігнорує файл конфігурації (mongod.conf) у "/ usr / local / etc", тому мені завжди потрібно запускати його з аргументом dbpath

mongod --dbpath /usr/local/var/mongodb

навіть якщо той самий шлях вказаний у файлі конфігурації.

Також використання "mongod" з файлом конфігурації мені не підходить

mongod -f /usr/local/etc/mongod.conf

або

mongod --config /usr/local/etc/mongod.conf

Я вирішив усі ці проблеми, запустивши mongodb, за допомогою сервісних центрів. Це добре працювало без проблем і бере параметри з потрібного конфігураційного файлу.

brew services run mongodb-community
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.