【问题标题】:MongoDB 2.6.12 - no collections in DBMongoDB 2.6.12 - 数据库中没有集合
【发布时间】:2017-07-01 00:01:43
【问题描述】:

我对 MongoDB (2.6.12) 有一些问题。我有一个包含集合和大量数据的数据库。然后我创建了具有readWrite 角色的用户,在mongod.conf 中启用了auth=true,重新启动了“mongod”服务。

看起来 auth 工作正常,但我在 DB 中看不到任何数据/集合。我不能使用“查找”查询,在 mongo shell 中它什么都不返回(空行)。我也可以在没有凭据的情况下连接到数据库,并且看到相同的结果。

我尝试了不同的角色和不同的用户,但我无法访问我的数据。可能是什么问题?

【问题讨论】:

  • 你确定dbpath 是正确的吗?你有副本集吗?
  • @MickaëlB “你确定 dbpath 是正确的吗?”哦,我的 :) 谢谢,这是个问题

标签: mongodb


【解决方案1】:

好的!

  1. 登录时,需要使用--authenticationDatabase -参数,正常值为'admin'。

mongo 主机:端口 -u 用户 -p 密码 --authenticationDatabase 管理员

  1. 如果身份验证数据库与您的集合所在的数据库不同(您的集合不在 admin-database 中),请将该数据库名称作为“mongo”命令的最后一个参数,以选择该数据库。

mongo host:port -u user -p password --authenticationDatabase admin myOwnDB

  1. 成功登录后,使用命令:'use your_db_name',更改该数据库。

使用 myOwnDB

如果您不知道您的数据库名称。 登录成功后,使用命令“show dbs”列出所有数据库。

显示数据库

之后你可以使用命令'use db_name'来改变数据库。然后您可以使用命令“显示集合”列出该数据库上的所有集合。

使用 myOwnDB

显示收藏

【讨论】:

    猜你喜欢
    • 2012-12-05
    • 2014-02-08
    • 2018-09-13
    • 1970-01-01
    • 2016-11-06
    • 1970-01-01
    • 2020-04-19
    • 2015-12-25
    • 2013-04-18
    相关资源
    最近更新 更多