Я следил за документами MongoDb, чтобы настроить свой первый MongoDb,
Когда я запускаю MongoDB с помощью команды
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
Я следил за документами MongoDb, чтобы настроить свой первый MongoDb,
Когда я запускаю MongoDB с помощью команды
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
Ответы:
MongoDB нужна папка для хранения базы данных. Создайте C:\data\db\
каталог:
mkdir C:\data\db
а затем запустите MongoDB:
C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe
Иногда C:\data\db
папка уже существует из-за предыдущей установки. Поэтому, если по этой причине mongod.exe
не работает, вы можете удалить все содержимое из C:\data\db
папки и выполнить mongod.exe
снова.
/mongodb_data/db
Для пользователей macOS, чтобы исправить эту проблему:
Вам необходимо пройти следующие шаги:
Создайте каталог «db». Здесь будут жить файлы данных Mongo. Вы можете создать каталог в местоположении по умолчанию, запустив:
sudo mkdir -p /data/db
Убедитесь, что /data/db
каталог имеет нужные разрешения, запустив:
sudo chown -R `id -un` /data/db
Теперь все готово, и вы можете запустить sudo mongod
сервер Mongo.
Это не работает, если вы бежите только mongod
Источник .
mkdir: /data/db: Read-only file system
при запуске первой команды. Как я мог это исправить? Спасибо.
Та же проблема на моем Mac (с использованием Brew) решена с помощью:
sudo mongod
Чтобы изменить папку db по умолчанию C:\data\db
в Windows, выполните следующую команду:
--dbpath
Например:
\mongod --dbpath C:\myfolder
Пользователи Mac
Вместо запуска MongoDB с:
sudo mongod
mongod
Вместо этого вы можете использовать, если вы:
sudo chmod -R ugo+rw data
Если вам нужно использовать sudo
при запуске mongodb ( sudo mongod
), это означает, что у вас нет прав на чтение и запись в папке данных mongodb.
Пожалуйста, сделайте следующие шаги:
Как упоминали другие друзья, вы должны сначала создать каталог для хранения данных вашей базы данных. Эта папка может быть примерно такой:
C: \ mongo-data
Из командной строки перейдите туда, где вы установили mongodb и где находится mongod.exe. В моем случае полный путь:
C: \ Program Files \ MongoDB \ Server \ 3.4 \ bin
Отсюда запустите mongod.exe и передайте ему путь к папке, которую вы создали на первом шаге, используя флаг --dbpath следующим образом:
mongod.exe --dbpath "C: \ mongo-data"
Обратите внимание : если вы работаете в Windows, для правильной работы необходимо использовать двойные кавычки ("") выше.
Таким образом вы получите примерно следующее:
2017-06-14T12:45:59.892+0430 I NETWORK [thread1] waiting for connections on port 27017
Если вы используете одинарные кавычки ('') в окнах, вы получите:
2017-06-14T01:13:45.965-0700 I CONTROL [initandlisten] shutting down with code:100
Надеюсь, это поможет решить проблему.
Чтобы запустить демон Mongo DB с помощью mongod
команды, у вас должен быть каталог базы данных, возможно, вам нужно запустить:
mkdir C:\data\db
Кроме того, у MongoDB должны быть разрешения на запись для этого каталога, или он должен запускаться с разрешениями суперпользователя, например sudo mongod
.
Я продолжал получать следующую ошибку, когда пытался запустить mongodb (на Mac OS).
"shutting down with code:100"
Я использовал следующую команду:
./mongod --dbpath=~/mongo-data
Для меня исправление заключалось в том, что мне не нужен был знак «=», и это вызывало ошибку. Так я и сделал
./mongod --dbpath ~/mongo-data
Просто хотел выбросить это там, потому что ошибка никоим образом не указывает на то, что это проблема. Я почти удалил содержимое каталога ~ / mongo-data, чтобы посмотреть, помогло ли это. Рад, что вспомнил, что в cli args иногда не используется знак "=".
сначала вам нужно создать каталог данных, в котором MongoDB хранит данные. Путь к каталогу данных MongoDB по умолчанию - это абсолютный путь \ data \ db на диске, с которого вы запускаете MongoDB.
если вы установили на диск C: /, вам необходимо создать каталог data \ db. для выполнения этой команды запуска в cmd
C:\>mkdir data\db
Чтобы запустить MongoDB, запустите mongod.exe.
"C:\Program Files\MongoDB\Server\4.2\bin\mongod.exe" --dbpath="c:\data\db"
Параметр --dbpath указывает на каталог вашей базы данных.
Подключитесь к MongoDB.
"C:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"
чтобы проверить, все ли в порядке:
show dbs
1.Если отображается ошибка (завершение работы с кодом 100), это означает, что не удается найти нужное расположение файла.
1.a Если это до macOS Catalina, создайте каталог с помощью sudo mkdir -p / data / db и дайте разрешения на его использование
sudo chown -R id -un
/ data / db.
1.b, если это macOS Catalina и более поздние версии, создайте sudo mkdir -p / System / Volumes / data / db и дайте ему разрешения sudo chown -R id -un
/ System / Volumes / data / db.
2. запуск сервисов mongo db brew, запуск mongodb-community
3. введите mongod или mongod --dbpath / System / Volumes / Data / data / db.
4.И если ошибка mongod show (завершение работы с кодом 48)
означает, что порт уже используется, поэтому вы можете сделать две вещи
4.a Либо вы измените порт mongod, указав
номер порта mongod --dbpath / System / Volumes / Data / data / db --port 27018.
4.b Или вы можете убить процесс на этом порту, найдя процесс с помощью sudo lsof -i: 27017, а затем убить с помощью команды
kill -9
5. повторите шаги 2 и 3.
Для пользователей macOS позаботьтесь о следующей проблеме:
если вы устанавливаете MongoDB Community на macOS с помощью Tarball .tgz
(( Начиная с macOS 10.15 Catalina, Apple ограничивает доступ к каталогу данных MongoDB по умолчанию / data / db. В macOS 10.15 Catalina вы должны использовать другой каталог данных, например / usr / local / var / mongodb. ))
вы можете решить это следующим образом:
(MacOS Catalina и выше)
Apple создала новый том в Каталине в целях безопасности. Если вы используете Catalina, вам необходимо создать папку / data / db в System / Volumes / Data.
Используйте эту команду:
sudo mkdir -p /System/Volumes/Data/data/db
Затем используйте эту команду, чтобы предоставить разрешения:
sudo chown -R `id -un` /System/Volumes/Data/data/db
это заменит нормальный
sudo mkdir -p /data/db
Убедитесь, что каталог / data / db имеет необходимые разрешения, запустив:
sudo chown -R `id -un` /data/db
как только вы закончите и запустите mongoDB, вы можете использовать в терминале следующее:
sudo mongod --dbpath /System/Volumes/Data/data/db
В MacOS : -
Если вы забыли указать путь к ранее созданной базе данных при запуске сервера mongo, появится указанная выше ошибка.
sudo ./mongod --dbpath ../../mongo-data/
Примечание. - ./mongod && ../../mongo-data - относительный путь. Таким образом, вы можете избежать этого, настроив в переменной среды
Для Windows у меня такая же проблема.
Исправление было - мне нужно запустить командную строку от имени администратора.
если у вас уже есть каталог, проверьте права доступа к каталогу или попробуйте перезапустить mongo с помощью sudo. sudo brew services запускает mongodb
В моем случае я получил аналогичную ошибку, и это произошло потому, что я запустил mongod с пользователем root и создал файл журнала, доступный только root. Я мог бы исправить это, изменив владельца с root на пользователя, от которого вы обычно запускаете mongod. Файл журнала находился в / var / lib / mongodb / journal /
Аравинд.
Это случилось и со мной, потому что я остановил MongoDB диспетчером задач.
Создание папки C: \ data \ db и запуск MongoDB в C: \ Program Files \ MongoDB \ Server \ 3.4 \ bin \ mongod.exe сработали для меня, как предлагал cespon, но MongoDB не показывал ни одну из моих баз данных ранее созданный.
Затем, удалив папку C: \ data \ db и восстановив установку с помощью установщика MongoDB , я восстановил свои данные и нормально запустил MongoDB.
(Я новичок в MongoDB, но он помог мне решить эту проблему и восстановить данные предварительного просмотра).
набрал mongod и получил ошибку
Ошибки:
исключение в initAndListen: NonExistentPath: каталог данных / data / db не найден., завершение
выключается с кодом 100
Затем попробуйте (создать папку данных и db со всеми разрешениями)
mongod --dbpath = / данные
используйте новую вкладку и введите монго.
Если вы все еще сталкиваетесь с проблемой, вы можете проверить Mac catalina: ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x-tarball/ )
для окон: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows-unattended/
C:\data\db\
не найден. Использование:mkdir C:\data\db