Ответ 1
Это должно работать, чтобы убедиться, что каталог настроен в нужном месте, чтобы Mongo мог его найти:
sudo mkdir -p /data/db/
sudo chown `id -u` /data/db
Я получаю следующую ошибку, когда пытаюсь запустить "mongod" в терминале. Я попытался удалить, переустановить и перезагрузить компьютер. Любые предложения о том, как заставить его работать, будут потрясающими.
ОШИБКА:
dbpath (/data/db) does not exist.
Create this directory or give existing directory in --dbpath.
See http://dochub.mongodb.org/core/startingandstoppingmongo
Боковое примечание: Node также перестала работать на моей машине примерно в то же время, когда я получил эту ошибку.
events.js:72
throw er; // Unhandled 'error' event
^
Error: failed to connect to [localhost:27017]
Любая помощь будет очень признательна!
Это должно работать, чтобы убедиться, что каталог настроен в нужном месте, чтобы Mongo мог его найти:
sudo mkdir -p /data/db/
sudo chown `id -u` /data/db
Вам необходимо создать каталог с правами root/data/db или задать любой другой путь с помощью следующей команды:
mongod --dbpath /srv/mongodb/
Я решил проблему с помощью:
sudo mongod --dbpath=/var/lib/mongodb
, а затем mongo для доступа к оболочке mongodb.
Измените пользователя нового каталога данных:
chown mongodb [rute_directory]
И попробуйте еще раз, чтобы начать службу mongo
сервис mongod start
Я решаю ту же проблему с этим.
Демоны (обычно заканчивающиеся на d) обычно запускаются как службы. Запуск службы (daemon) позволит mongodb работать в соответствии с проектом (без изменений разрешения, если он хорошо интегрируется с вашим дистрибутивом). Я запускаю его, используя службу с именем mongodb вместо запуска mongod напрямую - при дистрибутиве с включенным systemd при запуске, выполните:
sudo systemctl enable mongodb
sudo systemctl start mongodb
или, при дистрибутиве с выскочкой (если у вас есть /etc/init ) или init (если у вас есть /etc/init.d) (https://www.tecmint.com/systemd-replaces-init-in-linux/) вместо этого выполните:
sudo service mongodb enable
sudo service mongodb start
Если у вас есть дистрибутив с rc ( "run command" ), например Gentoo (настройки в /etc/init.d) (https://forums.gentoo.org/viewtopic-t-854138-start-0.html):
rc-update add mongodb default
/etc/init.d/mongodb start
В дистрибутиве/версии FreeBSD, который все еще имеет rc (проверьте, переключена ли ваша версия на systemd, иначе см. ниже):
добавьте следующую строку в /etc/rc.conf:
mongod_enable = "ДА"
то
sudo service mongod start