【问题标题】:How to load scripts in MongoDB如何在 MongoDB 中加载脚本
【发布时间】:2016-10-09 20:22:23
【问题描述】:

我使用的是 MongoDB 3.0 版,我想在数据库上运行 script.js

我发现的问题是 mongo 没有看到我的文件 script.js。

我一步一步做了什么:

  1. 我已将MongoDB安装在目录MongoDB\Server\3.0\bin\
  2. 我已将 script.js 放入 \bin 目录中
  3. 我想做的是使用 load() 方法运行 script.js
  4. 我有一个错误

    加载("script.js") 2016-10-09T22:17:17.557+0200 E - 文件 [script.js] 不存在 2016-10-09T22:17:17.558+0200 E QUERY 错误:加载 js 文件时出错:script.js 在(外壳):1:1

可能我把 script.js 放在了错误的地方,但我应该把它放在哪里? 下一步是我正在使用 mlab,我想将我的脚本加载到在线服务器,如何执行此操作?

【问题讨论】:

    标签: mongodb


    【解决方案1】:

    我不知道任何能使 \bin 目录相关的魔法,但假设您的脚本位于 /bin 中,您只需要在从 mongoshell 中执行加载时调用完整路径

    load('/bin/script.js');
    

    如果你的脚本位于你的主目录之外,它会像

    load('/Users/yourname/script.js');
    

    请参阅加载文档:https://docs.mongodb.com/manual/reference/method/load/

    同上,您如何在“服务器”上运行它。它不是在服务器上运行,而是在您正在运行的外壳中。如果 shell 连接到特定服务器,则脚本的效果将在服务器上,但脚本本身会在您的 shell 中执行。

    【讨论】:

      【解决方案2】:

      对于 Windows 尝试: load('c:\MongoDB\Server\3.0\bin\prova.js')

      【讨论】:

      • load('c:\\MongoDB\\Server\\3.0\\bin\\script.js')
      • 这里有一个提示,因为这是您的第一个答案,请使用edit 函数在您的原始答案中附加更多信息而不是添加评论
      【解决方案3】:

      load("C:\\Data\\Mongo\\M001\\loadMovieDetailsDataset\\loadMovieDetailsDataset.js")

      双 \ 可以解决问题。我收到了类似的错误,因为我的安装路径没有设置并且文件 res

      【讨论】:

        【解决方案4】:

        尝试更改 .js 文件的名称。就我而言,错误是因为文件夹名称和文件名相同。

        【讨论】:

          猜你喜欢
          • 2013-02-20
          • 2011-07-27
          • 2015-07-11
          • 2022-08-23
          • 2016-08-02
          • 2013-10-08
          • 2016-05-22
          • 2011-06-05
          • 2018-10-30
          相关资源
          最近更新 更多