2015-07-12 4 views
3

Я пытаюсь установить mongodb на windows 7 64-bit. Я извлек файлы и скопировал каталог bin в c: \ mongodb. Под C: \ MongoDB Я поместил файл конфигурации, mongod.cfg, содержание которого является:Ошибка чтения из файла конфигурации

systemLog: 
    destination: file 
    path: c:\mongod\data\log\mongod.log 
storage: 
    dbPath: c:\mongod\data\db 

я побежал следующую команду:

mongod.exe --config "C:\mongodb\mongod.cfg" --install 

В результате было следующее сообщение об ошибке:

error command line: unrecognized line in 'systemLog:' 

Я пытался сохранить файл CFG как ANSI, так и UTF-8, но это, похоже, не имеет значения. Я просто хочу, чтобы mongodb знал о моих настройках хранения и регистрации.

ответ

1

Файлы конфигурации MongoDB выражены с помощью YAML. В YAML литтеральная строка может быть выражена с использованием double-quoted style, single-quoted style или plain style (иначе «без кавычек»).

В вашей строке пути содержит как :и\ вы должны использовать одинарные кавычки стиля здесь:

systemLog: 
    destination: file 
    path: 'c:\mongod\data\log\mongod.log' 
storage: 
    dbPath: 'c:\mongod\data\db' 
+0

Я пробовал с одинарными кавычками, я получаю ту же ошибку. –

+1

Ваш ответ закончился часами разочарования в установке MongoDB в Windows. – vbocan

0

Попробуйте запустить полную команду "C:\<install directory>\mongod.exe" --config "C:\<config>" --install и сделать вашу командная строка в настоящее время работает как админ.

0

Я ожидаю, что это связано с изменением варианта хранения в течение цикла разработки 3.0. В некоторых из кандидатов раннего выпуска параметр использовал другой случай (например, «wiredtiger»), но вариант канонической конфигурации для финальной версии 3.0 «wiredTiger» в соответствии с документацией. Альтернативные варианты поддерживались для нескольких последовательных точечных выпусков, но в конечном итоге были удалены.

0

На всякий случай это помогает кому-то еще: я столкнулся с той же проблемой, и проблема закончилась тем, что была связана с более старой версией mongod в моей переменной среды PATH (вместо той, которую я ожидал; возможно, что-то вроде @ThrowsException в).

1

В моем случае это происходило, потому что у меня была версия старого db, и установка установщика MSI не обновляла его. Когда я запустил mongod.exe --version, он сказал, что я все еще использую старую версию db (2.2.2 для меня).

Я должен был ...

  1. Остановить службу Монго для Windows
  2. Перейти к Mongo Download Center page, и нажмите на Все версии Binaries ссылку.
  3. Загрузите и извлеките почтовый файл.
  4. Перезапишите файлы Mongo exe в моем месте установки с новыми из почтового индекса.
  5. Удалить службу с mongod --config C:\mongodb\mongod.cfg --remove
  6. Установка службы с mongod --config C:\mongodb\mongod.cfg --install

Я не уверен, если MSI не знает, где установить или что, но теперь mongod --version возвращает правильный номер версии, и нет error command line: unrecognized line in 'systemLog:' при установке обслуживание.

Смежные вопросы