开箱即用的MongoDB:未授权插入(Windows 7)

时间:2014-02-09 02:59:47

标签: node.js mongodb

我一直在关注实际的MongoDB文档here  以及一些让我无处可去的教程文章。

运行64位Windows操作系统(这是一台工作计算机,我的特定Windows登录不是管理员登录..所以我确保以管理员身份打开任何exe文件)。我不能在“mongo”或“使用[db name]”之外的终端中做任何事情。

我无法保存或添加db.testData.insert( j )之类的内容。即使输入“show dbs”,我也会收到错误消息 listDatabases failed:{ "ok" :0, "errmsg" : "unauthorized" } at src/mongo/shell/mongo.js:46

对于我所遵循的每一个例子,我似乎永远不会被“认证”以超越A点。请帮助我!我不知道我现在做错了什么。

更新
对不起,每个人都感到困惑。问题结果是我有一个旧的MongoDB服务仍然在我需要禁用的后台运行。

在测试某些节点包或其他东西时,必须打开该服务。一旦我禁用了服务,一切都按预期开始工作。

所以对于那些遇到问题的人,请确保打开services.msc并确保没有运行MongoDB

1 个答案:

答案 0 :(得分:0)

由于没有正式的Windows安装程序,我建议您删除数据文件夹并重新启动。开箱即用,MongoDb没有安全性,因此您已经按照后面需要密码的步骤进行操作。回溯你的步骤,或重新开始。

您无需切换到admin数据库。我建议您切换到test数据库,例如:

> use test
switched to db test

默认情况下,如果没有额外配置,在Windows上您可以在MongoDb未运行时删除c:\data\db的内容(但如果您使用的是指定dbpath的配置文件,请删除该文件夹的内容。)

有许多tutorials详细介绍了如何使用Mongodb配置用户/安全性,在解决此问题后您可能需要阅读这些内容。

在您获得平台使用经验之前,没有理由使用MongoDB创建用户和管理控制。事实上,我根本不会推荐它。当你看到没有真正的收获时,它只会妨碍你。