【发布时间】:2021-09-03 22:54:36
【问题描述】:
我花了一些时间试图找出问题所在,但由于我找不到,我决定在这里问。
我在 Windows 8 上运行 MongoDB(Windows 64-bit 2008 R2+) 版本 3.2.3,路径是:
C:\MongoDB\bin 用于安装
C:\data\db 用于数据文件夹
我已经安装了官方文档中的this video 和this tutorial。
第一个问题可能是客户端(mongo.exe)和服务器(mongod.exe)之间的连接,因为我真的不知道这是否是一个问题。
我通过命令行启动了 mongod.exe(具有管理员权限),一切正常,我收到了消息:
waiting for connections on port 27017
但是当我通过命令行的新实例启动 mongo.exe 时,服务器 (mongod.exe) 不会打印一条消息说有一个新的连接(在我观看的教程中就是这种情况)
在另一边,mongo.exe 打印出来
connecting to : test
我不知道此时一切是否正确,但我仍然尝试了一些基本命令,例如:
show dbs 返回not authorized on admin to execute command
基本上,我尝试的所有命令都有相同的错误消息,即使是我刚刚使用use 'dbName' 创建的“新鲜”数据库
网上的一些答案说我必须创建一个具有适当角色的用户,我试过this one。
还是一样的错误信息not authorized to execute command
我的问题如下:
当我启动 mongo.exe 时 mongod.exe 不显示新连接是否正常?如果它是正确的,那么我该怎么做才能使基本命令正常工作?
附加信息:
我尝试卸载/重新安装几次,使用 Windows 安装程序中的“自定义模式”和“完整模式”,但总是导致同样的问题。
我还尝试按照官方文档创建 MongoDB 服务,但我不确定这是否是个好主意。 (我无法添加更多链接,但它在我分享的第二个链接的一个部分中。
编辑部分:
我决定在我多年未接触过的另一台运行 Windows 7 64 位的计算机上尝试一下。
我复制了这台电脑根目录下的MongoDB安装文件夹,创建了\data\db文件夹并启动了mongod.exe。
然后我启动了 mongo.exe,这一次,mongod.exe 打印了一条消息,说有一个新的打开连接,它不在我的实际计算机上。我认为问题出在这里,因为我能够从官方文档开始基本教程并执行简单的命令,如创建新数据库、插入、查找、显示数据库等。我在实际计算机上无法完成的所有操作.
所以我认为问题来自于 mongod.exe 和 mongo.exe 之间的连接
您知道如何解决这个问题,因为我已经尝试卸载了几次。
【问题讨论】:
-
您对当前用户的权限显然不正确。这是一个新的安装。只需在未启用授权的情况下安装新的,然后先掌握事情的窍门。然后仔细按照教程(我会推荐主站点文档而不是人们的博客文章)正确设置授权。
-
您创建了用户吗?如果没有,请从您的配置文件中删除 --auth,重新启动并重试。
-
@genericuser 因为它是全新安装,我认为我没有创建用户。对于配置文件,我没有,因为我使用了 .msi,显然如果需要,您必须手动创建一个。
-
@BlakesSeven 所以我尝试按照官方文档 (docs.mongodb.org/v3.2/tutorial/install-mongodb-on-windows) 重新安装 MongoDB,但我仍然面临同样的问题。是否可能与 mongod.exe 和 mongo.exe 之间的连接有关?谢谢
-
如果您使用的是 MongoDB Compass,请查看my solution here
标签: mongodb