2015-07-12 118 views
3

我试图在Windows 7 64位上安装mongodb。我已经提取了这些文件并将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 styleplain style(又名“未加引号”)来表示输尿管串。

当你的字符串包含两个:\你必须使用单引号风格这里:

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

我试过用单引号,我得到了同样的错误。 –

+1

您的答案在Windows上安装MongoDB时沮丧不已。 – vbocan

0

尝试运行完整的命令"C:\<install directory>\mongod.exe" --config "C:\<config>" --install,使您的命令提示符正在运行的管理员。

0

我预计这是由于在3.0开发周期中存储选项发生变化的情况。在某些早期版本的候选版本中,参数使用了不同的格式(例如“wiredtiger”),但3.0最终版本的规范配置选项是“wiredTiger”。对于几个连续的点发布支持替代变体,但最终被删除。

0

以防万一它帮助别人:我遇到了同样的问题,问题最终是由于我的PATH环境变量中的老版本的mongod(而不是我期望的;可能是@ThrowsException获得的是什么在)。

1

在我这种情况下,这是因为我有一个旧的数据库版本运行和安装MSI安装程序没有升级它。当我运行mongod.exe --version时,它说我还在运行一个旧的db版本(对我来说是2.2.2)。

我只好......

  1. 停止蒙戈Windows服务
  2. 转到Mongo Download Center page,并单击所有版本的二进制文件链接。
  3. 下载并解压缩zip文件。
  4. 用zip中的新文件覆盖我的安装位置中的Mongo exe文件。
  5. mongod --config C:\mongodb\mongod.cfg --install

删除与mongod --config C:\mongodb\mongod.cfg --remove

  • 服务安装服务,我不知道,如果MSI不知道在哪里安装或什么,但现在mongod --version返回正确的版本号,以及安装服务时没有error command line: unrecognized line in 'systemLog:'