MongoDB не работает. «ОШИБКА: dbpath (/data/db) не существует.»
Я получаю следующую ошибку при попытке запустить «mongod» в терминале. Я пытался удалить, переустановить и перезагрузить компьютер. Любые предложения о том, как заставить это работать, были бы удивительны.
Примечание: узел также перестал работать на моей машине примерно в то же время, когда я получил эту ошибку.
Любая помощь приветствуется!
5 ответов
Это должно работать, чтобы убедиться, что каталог настроен в нужном месте, чтобы Mongo мог его найти:
sudo mkdir -p /data/db/
sudo chown `id -u` /data/db
Вам необходимо создать каталог в корневом каталоге /data/db или указать любой другой путь с помощью следующей команды:
Я решил проблему с:
sudo mongod —dbpath=/var/lib/mongodb и затем монго, чтобы получить доступ к Shell mongodb.
Измените пользователя нового каталога данных:
И попробуйте в другой раз запустить службу Монго
Я решаю ту же проблему с этим.
Демоны (обычно заканчивающиеся на d) обычно запускаются как сервисы. Запуск службы (daemon) позволит mongodb работать так, как задумано (без изменения разрешений, если он хорошо интегрируется с вашим дистрибутивом). Я запускаю его с помощью службы mongodb вместо непосредственного запуска mongod — в дистрибутиве с включенной системой systemd при запуске, затем запускаю так:
или в дистрибутиве с upstart (если у вас есть / etc / init) или init (если у вас есть /etc/init.d) ( https://www.tecmint.com/systemd-replaces-init-in-linux/) вместо этого запустите:
Если у вас есть дистрибутив с rc («командами запуска»), такими как Gentoo (настройки в /etc/init.d) ( https://forums.gentoo.org/viewtopic-t-854138-start-0.html), запустите:
В дистрибутиве / версии FreeBSD, в которой все еще есть rc (проверьте, переключена ли ваша версия на systemd, в противном случае см. Ниже):
добавьте следующую строку в /etc/rc.conf:
sudo service mongod start
После запуска службы непривилегированный пользователь может использовать монго, и у каждого пользователя будут отдельные данные.
Источник
служба mongodb не запускается
Я установил mongodb 2.0.3, используя пакет debian mongodb-10gen. Все прошло хорошо, за исключением службы, которая установлена по умолчанию не запускается при запуске компьютера. The mongod работает только как пользователь root. может в этом причина. но насколько я знаю, должны работать, так как они добавляются пользователем root.
каким может быть решение?
если я запускаю просто mongod
если я запускаю sudo service mongodb start это говорит:
но нет никакого процесса при просмотре с htop и mongo говорит:
17 ответов
на моем сервере ubuntu просто запустите:
причиной dbpath переменная /etc/mongodb.conf . Ранее я использовал mongodb 1.8, где значение по умолчанию для dbpath было /data/db . Выскочка mongodb (который поставляется с пакетом mongodb-10gen) вызывает mongod С .
в качестве решения мне нужно было только изменить владельца
это также может произойти, если ваши права доступа к файлам как-то изменяются. Удаление файла блокировки не помогло, и мы получали ошибки в файле журнала, такие как:
Итак, пошел проверить разрешения:
удалите файл блокировки, если он все еще там:
хвост журнал и вы должны увидеть в конце:
Я скучно этой проблемы, поэтому я решил создать сценарий оболочки, чтобы легко восстановить мою базу данных mongo.
помните, что при перезапуске базы данных путем удаления .блокировка файлов силой, данные могут быть повреждены. Ваш сервер не должен считаться «здоровым», если вы перезапустили сервер таким образом.
чтобы изменить ситуацию, либо запустите
в оболочке mongo, чтобы вернуть вашу базу данных в «здоровое» состояние.
1 — отключить fork на /etc/mongodb.conf если включена
2 — восстановить базу данных
3 — убить текущий процесс mongod
найти процессы mongo
вы получите mongod PID
остановить текущий процесс mongod
4 — запустить службу mongoDB
для ubunto, что заставило это произойти и было очень просто установить пакет mongodb:
иногда вам нужно удалить .заблокировать файл, чтобы запустить службу
просто переустановил mongo, и это сработало. Сборники не потеряны. Самое простое решение по крайней мере для меня
Источник
Как запустить Mongo DB из Windows?
Я установил MongoDB на мою Windows 7 (64-битную) машину. Я тоже создал путь data / db, но когда я попытался запустить mongodb с помощью команды ‘C:\mongodb\bin\mongod.exe’ , он не запускается . Это показывает admin web console waiting for connections on port 28017 .
Помогите мне в запуске MongoDB. А также, пожалуйста, предложите, если какой-либо графический интерфейс доступен для MongoDB.
Шаг 1
Шаг 2
- Следуйте обычным инструкциям по настройке
Шаг 3
Шаг 4
- cd в C:\Program Files\MongoDB\Server\3.2\bin>
- введите команду mongod
- по умолчанию сервер mongodb запускается в порту 27017
Шаг 5
- (опционально) загрузите RoboMongo и следуйте обычным инструкциям по установке
Шаг 6
- Запустите RoboMongo и создайте новое соединение на localhost:27017
Ваш MongoDB запущен и связан с RoboMongo (теперь Robo 3T) — сторонним инструментом GUI
Это сработало для меня
- Скачать с http://www.mongodb.org/downloads
- Установите MSI- файл в папку C: \ mongodb
- Создайте данные , data \ db , каталоги журналов и файл mongo.config в C: \ mongodb .
Добавьте следующие строки в файл » mongo.config «
Подключитесь к локальному серверу MongoDB через командную строку
Подключитесь к удаленному серверу MongoDB через командную строку с аутентификацией.
Шаг 1: Сначала загрузите MSI, т.е. это установочный файл с
Шаг 2. Выполните установку, используя загруженный MSI-файл. Он автоматически сохраняется в программных файлах. Вы можете выполнить выборочную установку и изменить каталог.
После этого вы сможете увидеть папку Mongodb
Шаг 3: Создайте новую папку в этой папке Mongodb с именем «data». Создайте еще одну новую папку в вашем каталоге данных с именем ‘db’.
Шаг 4: Откройте cmd. Перейдите в каталог, где находится ваша папка mongodb, и укажите путь, например, C: \ MongoDB \ Server \ 3.0 \ bin. В папке bin вы должны иметь mongodb.exe
Шаг 5: Теперь используйте
Создать сервис MongoDB в Windows. Сначала откройте cmd с администратором
Есть 2 способа начать установку mongoDB (например: C: /)
Прежде всего: скопируйте папку установки mongoDB в C: / location, затем измените имя на «mongodb» или что-то еще, что вы хотите. вот бывший с именем «mongodb»
1: настройка mongoDB — это служба Windows
2: небольшой файл .BAT для запуска mongoDB без установки, копирования и вставки в блокнот и сохранения файла с типом файла «.bat» вот оно:
если вы получаете ошибку 1078 или 1087, давайте удалим все данные в C: / data / db и перезапустим mongoDB (скопируйте старые данные в новую папку и сделайте резервную копию после перезапуска mongoDB)
3 GUI для mongoDB
весело провести время с этим
Я выполнил следующие шаги . Может быть, это будет работать для вас
Создать каталог, как показано ниже
C: \ DATA \ DB
У меня это сработало .
Это правильно написано здесь
Если вы загружаете MSI-файл, установите его, а если вы загрузите ZIP-файл, распакуйте его.
MongoDB требует каталог данных для хранения всех данных . Путь к каталогу данных MongoDB по умолчанию — \ data \ db . Создайте эту папку, используя следующие команды из командной строки:
Вы можете указать альтернативный путь для файлов данных, используя параметр —dbpath для mongod.exe, например:
C:\mongodb\bin\mongod.exe —dbpath d:\test\mongodb\data
Если ваш путь содержит пробелы, заключите весь путь в двойные кавычки, например:
C:\mongodb\bin\mongod.exe —dbpath «d:\test\mongo db data»
Вы также можете указать dbpath в файле конфигурации.
Чтобы запустить MongoDB, запустите mongod.exe. Например, из командной строки:
Чтобы подключиться к MongoDB через оболочку mongo.exe, откройте другую командную строку.
It is showing admin web console waiting for connections on port 28017.
Приведенное выше сообщение означает, что mongodb успешно запущен и прослушивает порт 28017.
Вы можете использовать оболочку mongo ( mongo.exe ) для подключения к mongoDB и выполнения операций с БД.
Для MongoDB доступно несколько инструментов с графическим интерфейсом, таких как MongoVUE и т. Д.
Установка MongoDB в Windows немного сложнее по сравнению с другими исполняемыми файлами . Получил хорошую справку после долгого поиска, который я получил Установка MongoDB в Windows
После установки откройте командную строку и введите «mongod», затем сверните окно и откройте другое окно командной строки и введите «mongo», и вы увидите сообщение об успешном подключении к тестовой базе данных.
Я сделал ниже, это работает для меня в Windows.
Откройте командную строку в режиме администратора (щелкните правой кнопкой мыши командную строку и выберите «Запуск от имени администратора»).
затем выполните команду ниже
Собственно способ использования Windows, из официальной документации :
Узнайте, где установлен ваш исполняемый файл, путь может быть таким:
«C: \ Program Files \ MongoDB \ Server \ 3.4 \ bin \ mongod.exe»
Создайте файл конфигурации с таким содержимым (формат yaml), путь может быть таким:
«C: \ Program Files \ MongoDB \ Server \ 3.4 \ mongod.cfg»
- Выполните от имени администратора следующую команду (запустите командную строку от имени администратора):
Где пути уменьшены точками, см. Выше.
Ключ —install говорит монго, чтобы установить себя в качестве службы Windows.
Теперь вы можете запускать, останавливать, перезапускать сервер Монго, так как обычная служба Windows выбирает из этого ваш любимый способ:
- от Control Panel -> Administration -> Services -> MongoDB
- при выполнении команды из командной строки от имени администратора: ( net start MongoDB )
Проверьте файл журнала, указанный в файле конфигурации, если возникнут проблемы.
Это ВСЕ, что мне нужно для запуска mongo в PowerShell, многие ответы слишком сложны для IMO.
- Установите: https://www.mongodb.com/download-center#community
- Добавьте C:\Program Files\MongoDB\Server\3.6\bin в переменную среды «путь». Обратите внимание: эта версия скоро устареет.
- Включите новый PowerShell, так как он получает переменные окружения при запуске, затем введите mongod
- Откройте другое окно PowerShell и введите mongo — у вас есть доступ к mongo REPL! Если вы этого не сделаете, просто повторите 4 снова (известная ошибка: https://jira.mongodb.org/browse/SERVER-32473 )
Очевидно, что многие люди ответили на ваш вопрос о том, как заставить работать mongoDb, я бы ответил на вторую часть: относительно подходящего графического интерфейса для mongoDB
Мое предложение, пойти на MongoChef (сейчас Studio 3T)
Вы можете легко установить и использовать его.
Для пошагового руководства к инструменту GUI.
дополнительная вещь, которую вы можете сделать, это удивительно
является то, что вы можете добавить «C: \ Program Files \ MongoDB \ Server \ 4.0 \ bin» к переменным системного окружения, это позволит вам запускать команду «mongod» в любом месте вашего cmd без перехода в каталог bin каждый время.
— обратите внимание, что путь к каталогу bin может быть другим в вашем случае —
так что все устроить
1- Создайте папку data / db на вашем диске c: «Это путь по умолчанию, mongo будет искать место для хранения файлов вашей базы данных, поэтому вам не нужно указывать его с помощью« —dbpath »».
2 — добавьте «C: \ Program Files \ MongoDB \ Server \ 4.0 \ bin» в переменные среды вашей системы.
3- открытый тип CMD «mongod»
— Я видел это на канале YouTube под названием «thenewboston», что также удивительно —
Для пользователей Windows:
Добавить на ответ @ CoderSpeed выше ( ответ CoderSpeed ). Создайте пакетный файл (.bat) с командами, которые вы обычно вводите в CLI, например:
cd «C:\Program Files\MongoDB\Server\4.0\bin» mongod.exe
Метод запуска Windows Script Host позволяет запускать программу или сценарий в невидимом режиме. Вот пример кода сценария Windows, который незаметно запускает пакетный файл с именем syncfiles.bat.
Допустим, у нас есть файл с именем syncfiles.bat в каталоге C: \ Batch Files. Давайте запустим его в скрытом режиме, используя Windows Scripting.
Скопируйте следующие строки в Блокнот.
Set WshShell = CreateObject(«WScript.Shell») WshShell.Run chr(34) & «C:\Batch Files\syncfiles.bat» & Chr(34), 0 Set WshShell = Nothing
Примечание. Замените имя / путь пакетного файла в сценарии соответственно вашему требованию. Сохраните файл с расширением .VBS, скажем, launch_bat.vbs. Измените имя и путь файла .BAT соответственно и сохраните файл. Дважды щелкните, чтобы запустить файл launch_bat.vbs, который, в свою очередь, незаметно запускает командный файл syncfiles.bat.
Установка занимает некоторое время. После этого выполните следующие действия, чтобы ваш сервер заработал:
Источник
how to set mongod —dbpath
very new to mongodb and databases in general. whenever i run mongo i receive this error message:
running mongod i see this:
when i manually set my mongo dpath to mongod —dbpath /data/db (as should be the default on installation) and keep it running in terminal everything runs fine. but once i close it, everything breaks again. my question is:
- why is my dbpath set to /usr/local/var/mongodb ?
- how do i fix this error so mongo works on my machine?
i’m assuming i either need to permanently set the dbpath to /data/db or reconfigure something so it works with the dbpath as /usr/local/var/mongodb
i fairly new to unix commands as well so not entirely sure how to fix this error.
thank you for any suggestions!
so, digging through the mongodb documentation i read this:
«Unless specified, mongod will look for data files in the default /data/db directory. (Windows systems use the \data\db directory.) If you installed using a package management system. Check the /etc/mongodb.conf file provided by your packages to see the configuration of the dbpath .»
when i took a look at the files within /etc/ there is no mongodb.conf file. however, i do see /usr/local/etc/mongod.conf . so if i understand this correctly, i should create a file called /etc/mongodb.conf and set the dbpath to /data/db .
do i need to delete the stuff within /usr/local/ as well?
i think this has something to do with how my PATH are setup. could someone explain to me how to fix this in unix so i won’t have this problem?
Источник