【问题标题】:Mongodb:SyntaxError: Unexpected identifierMongodb:SyntaxError:意外的标识符
【发布时间】:2014-04-10 05:37:17
【问题描述】:

我是 mongodb 的新手。我正在使用 mongolab 创建免费数据库。我的数据库名称是安然。 使用在线 mongoshell 连接到 mongo 数据库然后发生错误。

  mongo ds033499.mongolab.com:33499/enron -u user -p user123

错误

  SyntaxError: Unexpected identifier

【问题讨论】:

  • 你的语法好像没问题,你用的是什么在线mongoshell??此语法在 linux 机器 shell 中完美运行。
  • 我正在使用try.mongodb.org这个shell。我也在寡妇机器上安装mongodb。我的机器shell也发生了同样的错误
  • @AdeelAhmad 不,语法不好,它缺少主机选项,即mongo -h ds033499.mongolab.com:33499/enron
  • 使用 mongo -h ds033499.mongolab.com:33499/enron 但同样的错误发生
  • @neil: 这个语法在 mongolab 中提到过。它是正确的:-),他使用的外壳是 mongo shell。我不确定我们是否可以从 mongo shell 连接到远程 mongo 实例。

标签: mongodb mlab


【解决方案1】:

您的语法没问题。此语法适用于 linux shell,当您在 mongo shell 中时不起作用。当您在 mongo shell 中时,您无法连接到远程 mongo 实例。也许您正在尝试这样的在线 shell,就像您在 mongoshell 中一样:

http://try.mongodb.org/ 

您可以使用具有相同语法的 linux shell 连接到实例,或者如果您是 windows 用户,您必须在 windows 机器上安装 mongo 管理 shell,它附带 mongo setup for windows。或者您可以使用 Robomongo 或 Mongo VUE 等 GUI 工具来访问 mongo 实例。

或者在 Windows 中转到您的 mongo bin 目录并输入 > mongo.exe --host ipofremote --port 27017

【讨论】:

  • 我用的是windows机器
  • 如果您是windows用户,您可以使用Robomongo、Mongo VUE等工具访问远程实例。我更喜欢 Robomongo,它有很多有用的功能。
  • 如果你想在windows上使用mongo shell,你需要先安装它。
  • 是的,我已经在我的机器上安装了 monogodb。那么是否使用相同的命令?
【解决方案2】:

我遇到了这个问题,发现 mongod.exe 正在干扰并且不允许我远程连接。如果没有运行 mongod.exe,mongo.exe 将无法从 Windows 中打开,因此您必须在 cmd 提示符下进入 mongo/bin 目录,然后在那里运行您的远程连接语法,它会起作用。

【讨论】:

    【解决方案3】:

    请尝试以下命令

    mongo -u admin -p tQp93-a29J --host servicedelivered.rhcloud.com --port 28015 --nodb

    所以现在您正在连接到远程主机并切换到您想要使用的数据库

    【讨论】:

      猜你喜欢
      • 2015-09-14
      • 2017-09-05
      • 2020-07-10
      • 2012-06-19
      • 2013-10-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多