85

我正在关注 docs.mongodb.org 上的教程,我已经完成了第一个教程,即在 Windows 机器上安装 mongodb。我现在处于开始 mongodb 开发的第二阶段。

我被困在本节的第一阶段,它指示我输入mongo系统提示符。当我这样做时,我只会收到一条错误消息,内容如下:

'mongo' is not recognized as an internal or external command, operable program or batch file

我知道这可能很简单,我做错了,有人有什么想法吗?

4

16 回答 16

254

您需要将 Mongo 的bin文件夹添加到“路径”环境变量中

以下是在 Windows 10 上的操作:

  1. 找到 Mongo 的bin文件夹。

如果你不确定它在哪里,它可能在C:\Program Files\MongoDB\Server\3.4\ 3.4 中是当时最新的稳定版本,这对你来说可能会有所不同。

它应该如下所示:

这是 3.4 版 Mongo 的 bin 文件夹的样子,重要的是它是包含 mongod.exe 的任何文件夹。 请注意,这是 mongo.exe 和 mongod.exe 的路径。将此文件夹添加到 Path 变量是告诉 Windows 在您在 cmd 中运行某些内容时在此文件夹中搜索与您的命令匹配的可执行文件。搜索从当前工作目录开始,如果它没有找到您的 exe,则继续搜索 Path 中的所有路径,直到找到它或它没有找到它,它会给您看到您看到的错误。

  1. 将路径复制到 bin 文件夹。应该是C:\Program Files\MongoDB\Server\3.4\bin\或您使用的任何版本

  2. win,输入env,Windows 会提示“编辑系统环境变量”,点击它。

如何找到系统环境变量。

  1. 在高级选项卡上,单击“环境变量”

系统属性中的高级选项卡包含环境变量。

  1. 突出显示“路径”变量,单击“编辑”:

您想编辑 Path 变量以将 Mongo 的 bin 文件夹添加到其中。

  1. 这将弹出“编辑环境变量”窗口,单击“新建”

将新文件夹添加到 Path 变量

  1. 这将在文件夹列表中开始一个新行:

Path 变量中的新行。

  1. 将路径粘贴到 bin 文件夹。确保它以这样的结尾\

粘贴 bin 文件夹的位置。

  1. 按“确定”、“确定”、“确定”

现在您应该能够在命令窗口中的任何位置mongod运行。mongo

于 2017-01-06T14:28:49.473 回答
77

您需要mongod先在一个 cmd 窗口中运行,然后打开另一个并键入mongo. 确保您也更新了 Windows Path 环境变量,这样您就不必导航到包含所有 mongo 二进制文件的目录来启动应用程序。要更新 Path 变量:

转到控制面板>系统和安全>系统>高级系统设置>环境变量>导航到路径变量点击编辑并添加;C:\mongodb到路径(或任何目录名称是MongoDB所在的位置(分号分隔每个目录) .

于 2013-02-24T19:27:15.180 回答
27

可能为时已晚,但为了面临同样问题的其他人(比如我)。这都是关于路径变量末尾的小“\”。当您在 PATH windows 变量的末尾插入 MongoDB 的 bin 目录的路径时,不要忘记将“\”(反斜杠)放在末尾,这告诉 windows 它是一个目录而不是名为 bin 的可执行文件...例如 I:\Program Files\MongoDB\Server\3.0\bin \

于 2015-04-12T18:03:01.767 回答
7

好像,环境变量设置不正确。

转到 mongodb 安装文件夹并获取可执行文件(mongo.exe、mongod.exe 等)的位置。(在我的情况下)类似的东西:

C:\Program Files\MongoDB\Server\3.2\bin

然后去:

Panel > System & Security > System > Advanced System Settings > Environment Variables 

找到PATH变量并编辑它的值。然后添加C:\Program Files\MongoDB\Server\3.2\bin,不要忘记用 . 分隔每个值;。现在确认并退出。

于 2016-03-14T03:18:06.500 回答
5

如果仍然无法为您工作,那么只需关闭所有命令提示符,然后再次打开并从任何地方运行 mongo、mongoimport、mongodb,因为在设置路径变量后应该重新启动命令提示符。

于 2017-06-04T19:24:34.443 回答
4

您需要在正确的目录中,即

C:\Program Files\MongoDB\bin

并且您要安装的路径必须是正确的

IE

mongod --dbpath 
C:\Users\Name\Documents\myWebsites\nodetest1

您的项目文件夹中还必须存在一个名为“data”的文件夹。

于 2014-09-30T06:56:45.003 回答
4

如需添加环境变量,请在 bin 后添加\ ,如下所示

C:\Program Files\MongoDB\Server\3.2\bin\

然后在命令提示符下尝试以下代码从数据文件夹的父文件夹运行 mongo 服务器。

mongod -dbpath ./data

就我而言,我无法从命令提示符(正常模式)运行 mongo。您应该以管理员身份运行。它也适用于 git bash。

于 2018-01-04T06:01:38.620 回答
2

这对我有用:

.\mongod  --dbpath c:\......
于 2015-10-08T09:22:03.447 回答
1

在使用 MongoDB 之前,您必须在本地运行它才能做到这一点:

  • 转到bin您将在以下位置找到的文件夹C:\Program Files\MongoDB\Server\4.2\bin
  • 打开mongod.exe. 将打开一个带有服务器详细信息的新终端。
  • 打开mongo.exe. 将打开允许您与数据库交互的外壳。
于 2020-07-03T12:32:29.130 回答
1

首先,确保您已设置环境变量。1.右键我的电脑 2.属性 3.高级系统设置 4.环境变量 5.编辑PATH变量。并将 ;"C:\mongoDb\bin\" 添加到 PATH 变量中。

引号中的路径可能因您的安装目录而异。不要忘记最后一个'\',因为它是我的主要问题。

于 2016-07-02T19:26:34.697 回答
1

除了有一个Path变量,目录C:\data\db是强制性的。

创建这个,错误将得到解决。

于 2017-04-10T13:08:21.830 回答
1

MongoDb在环境路径中添加bin 路径\为我工作

这是我的系统路径

C:\ProgramData\Oracle\Java\javapath;
...
...
Other path variables
...
;C:\Users\hitesh.sahu\AppData\Local\Android\sdk\platform-tools
;C:\Program Files\MongoDB\Server\3.2\bin\

确保:-

  • 环境路径之间不得有空格
  • 环境路径必须由;
于 2016-11-08T06:04:11.673 回答
0

只需在终端中使用mongotop而不是。mongod

于 2021-10-27T16:45:37.797 回答
0

大多数情况下,这不起作用,因为您没有设置路径,在我的情况下,我也没有设置路径。所以这可以通过以下步骤解决:

  1. 转到控制面板

  2. 点击系统和安全

  3. 然后点击系统

  4. 点击高级系统设置

  5. 点击环境变量

  6. 单击用户变量中的路径

  7. 编辑路径

  8. 添加新路径

  9. (从本地磁盘复制路径 c /program files/mongodb/bin),它应该类似于这个 C:\Program Files\MongoDB\Server\5.0\bin

  10. 将其粘贴在那里并单击确定

  11. 关闭 vs 代码并重新打开它

于 2021-08-15T05:47:38.817 回答
0

1.开始使用 MongoDB,以管理员权限打开 CMD 并输入:“C:\Program Files\MongoDB\Server\4.2\bin\mongo.exe”

2.创建数据目录(打开另一个 cmd 终端) cd C:
md "\data\db" 3. 要启动 mongo DB 数据库,在 cmd 中键入以下行:“C:\Program Files\MongoDB\Server\4.2 \bin\mongod.exe" --dbpath="c:\data\db" (--dbpath 选项指向您的数据库目录。)[您也可以先执行步骤 2 和 3,然后执行步骤 1]

参考:https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows/

于 2020-06-28T03:51:00.823 回答
-1

在 mongodb 的 bin 路径末尾提出斜杠“/”解决了我的问题。

于 2016-06-30T15:05:06.717 回答