Я дотримувався Документів 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-дані
З командного рядка перейдіть до місця, де ви встановили 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, щоб перевірити, чи це допомогло. Радий, що я згадав, що в аргументах кліків іноді не використовується знак "=".
спочатку потрібно створити каталог даних, де MongoDB зберігає дані. Шлях до каталогу даних MongoDB за замовчуванням - це абсолютний шлях \ data \ db на диску, з якого ви запускаєте MongoDB.
якщо ви встановили в C: / диск, то вам потрібно створити каталог даних \ 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, запустіть mongodb-співтовариство
3.Введіть mongod або mongod --dbpath / System / Volumes / Data / data / db
4. І якщо монгод показує помилку (вимикання з кодом 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 за допомогою .tgz Tarball
(( Починаючи з macOS 10.15 Catalina, Apple обмежує доступ до каталогу даних MongoDB за замовчуванням / data / db. У macOS 10.15 Catalina ви повинні використовувати інший каталог даних, наприклад / usr / local / var / mongodb. ))
Ви можете вирішити це наступним чином:
(MacOS Catalina і далі)
Apple створила новий том у Каталіні з метою безпеки. Якщо ви перебуваєте на Каталіні, вам потрібно створити папку / 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 у мене така сама проблема.
Виправлення було - мені потрібно запустити командний рядок як адміністратор.
якщо у вас вже є каталог, перевірте дозволи dir або спробуйте перезапустити mongo за допомогою sudo. sudo brew services запускає mongodb
У моєму випадку я отримав подібну помилку, і це траплялося, тому що я запустив mongod з кореневим користувачем, і який створив файл журналу, доступний лише для кореня. Я міг це виправити, змінивши право власності з root на користувача, з якого ви зазвичай запускаєте mongod. Файл журналу знаходився в / var / lib / mongodb / journal /
Якщо ви використовуєте Virtualbox, перевірте свою віртуальну машину.
docker-machine ssh
df -h
Подивіться на dev / sda1, якщо у вас немає вільного місця, це може бути пов’язано з великою кількістю зображень або контейнерів. Ви можете видалити їх за допомогою "docker rm" та "docker rmi"
Аравінд.
Це трапилось і зі мною, тому що я зупинив 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: Каталог даних / дані / db не знайдено.
вимикається за допомогою Коду 100
Потім спробуйте за допомогою (створити папку даних і db з усіма дозволами)
mongod --dbpath = / data
використовуйте нову вкладку та введіть mongo.
Якщо ви все ще стикаєтеся з проблемою, тоді ви можете перевірити наявність Mac catalina: ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x-tarball/ )
для Windows: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows-unattended/
C:\data\db\
не знайдено. Використання:mkdir C:\data\db