Де знаходиться файлова база даних mongo у файловій системі


19

Я використовую Ubuntu 16.04. Я створив базу даних MongoDB. Коли я запускаю його (за допомогою mongodкоманди), він каже, що база даних знаходиться в /data/db( dbpath=/data/db).

База даних працює чудово. Але у файлі провідника я не можу знайти цю папку. Я шукав у Computerпапці та в папці Home( Computer/home/<my name>).

Я також показав приховані файли та папки за допомогою Ctrl + H.

Як я можу знайти свою папку бази даних?

Відповіді:


24

Ви повинні мати можливість знайти місцезнаходження у файлі конфігурації: /etc/mongod.conf

grep dbPath /etc/mongod.conf

Згідно з документами mongodb :

Шлях за замовчуванням - /data/dbкаталог

За замовчуванням MongoDB прослуховує з'єднання від клієнтів на порту 27017 і зберігає дані в каталозі / data / db.

Якщо dbPathвстановлено, mongodb буде використовувати каталог, вказаний наdbPath

Якщо ви хочете mongodзберігати файли даних у іншому шляху, ніж /data/db ви можете вказати dbPath. dbPathПовинен існувати , перш ніж почати mongod. Якщо його не існує, створіть каталог та дозволи, щоб вони mongodмогли читати та записувати дані в цей шлях. Щоб отримати докладнішу інформацію про дозволи, перегляньте документацію щодо операцій із безпеки.


1
Я знайшов /etc/mongod.conf (зауважте, що немає листа "b"). Там написано: storage: dbPath: / var / lib / mongodb. І ця папка виглядає так, що це може бути база даних. Також змінною є dbPath (верхній регістр 'P'). Але тоді чому, до біса, коли я починаю mongod, він говорить dbpath = / data / db?
крофф

@croraf - значення /data/dbза замовчуванням шляху, якщо dbPathвоно встановлено, воно перевищує це значення. Зауважте, що для використання /data/dbяк фактичного шляху папка повинна існувати і мати правильні права власності / дозволу. дивіться оновлену відповідь із посиланням на документи mongodb
Ярон

Спасибі! Проблема полягає в тому, що команда mongod виводить "MongoDB start: pid = 2722 port = 27017 dbpath = / data / db 64-розрядний хост = korisnik-Lenovo-Y520-15IKBN", вказуючи, що dbpath є / data / db. Хоча це може бути шлях за замовчуванням, команда db start повинна вказувати фактичний шлях, у моєму випадку / var / lib / mongodb.
croraf

2
@croraf /etc/mongod.confконфігурація використовується тільки , якщо ви Start MongoDB в якості служби або явно передати це в командному рядку: mongod --config /etc/mongod.conf. Якщо ви почнете mongodбез жодних опцій, /data/dbбуде застосовано за замовчуванням . Якщо ви запускаєте mongodпослугу на Ubuntu, dbPathбуде, як зазначено в /etc/mongod.conf( /var/lib/mongodbза замовчуванням). Зазвичай ви хочете керувати MongoDB як службою, щоб забезпечити послідовну конфігурацію між викликами.
Стенні

@Stennie Так, здається, mongod запускається під час завантаження ОС (те, що ви називаєте "службою"). Це мене бентежило. Я перевірю сьогодні, але, ймовірно, працює mongod видає помилку, що порт вже пов'язаний.
croraf

1

Для вищезазначеного питання, хоча вони вже дали деякі відповіді, дозвольте мені також зробити це уточнення:

Під час використання linux (Ubuntu), коли ви встановлюєте mongodb, він автоматично налаштовується та запускається за замовчуванням. Значення dbpath за замовчуванням знаходиться в mongodb.conf. Коли ви заглянете у файл, ви побачите наступні рядки:

   # Where to store the data
     bdpath=/var/lib/mongodb

Тепер на базі документа mongodb :

Шлях за замовчуванням - /data/dbкаталог [повинен бути] , але якщо папка відсутня, mongodb запуститься з шляху, вказаного у файлі mongodb.conf.

Що робити:

  1. зупини мондоб
  2. створити папку даних за замовчуванням
  3. перезапустити mongodb: цього разу він почнеться із створених вами даних.

0

Це тому, що "корінь", який ви бачите, - це не справжній корінь, а його корінь вашого дому, на File Explorer, коли ви перебуваєте на домашній сторінці "root", натисніть, backspaceщоб перейти до батьківської папки.


-1

Спробуйте ввести file:///data/db/у веб-переглядачі (хром або вогняна лисиця). Ви зможете побачити файли та колекції, якщо ви mongodbвстановлені в системі, але всі будуть зашифровані, ви не можете їх прочитати в редакторі.

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