我花了一些时间试图找出问题所在,但是由于我无法找到答案,所以我决定在这里提问。
我在Windows 8上运行MongoDB(Windows 64位2008 R2+版本3.2.3),路径为:
C:\MongoDB\bin 用于安装
C:\data\db 用于数据文件夹
第一个可能的问题是,我不确定是否存在问题,就是客户端(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'
创建的“新”数据库。
一些网上的答案说我必须创建一个具有适当角色的用户,我尝试了这个。仍然出现相同的错误消息 not authorized to execute command
我的问题如下:
当我启动mongo.exe时,mongod.exe是否不显示新连接是正常的?如果正确,则我该怎么做才能使基本命令运行?
其他信息:
我尝试了几次卸载/重新安装,“自定义模式”和Windows安装程序中的“完整模式”,但始终导致相同的问题。
我还尝试按照官方文档创建MongoDB服务,但我不确定这是否是个好主意。(我不能添加更多链接,但它在我分享的第二个链接的一个部分中)
编辑区域:
我决定在另一台电脑上尝试它,这台电脑我已经多年没有碰过,运行的是Windows 7 64位。
我将MongoDB安装文件夹复制到此计算机的根目录下,创建了 \data\db 文件夹并启动了 mongod.exe。
然后我启动了 mongo.exe,这时 mongod.exe 打印出一条消息,指示有一个新的打开连接。但在我的实际电脑上不会出现这种情况。我认为问题就在这里,因为我能够从官方文档开始基本教程,并执行诸如创建新数据库、插入、查找、显示 dbs 等简单命令。这些都是我在实际电脑上无法完成的。
所以我认为问题来自于 mongod.exe 和 mongo.exe 之间的连接
您有任何想法,我该如何解决这个问题,因为我已经试过几次卸载。