web-dev-qa-db-ja.com

MongoDB Compassを使用した接続

MongoDB Compassを使用してコレクションの内容を表示しようとしています。ユーザー名/パスワード認証を設定しています。ログインはできますが、コレクション内のドキュメントが表示されません。代わりに、エラーが表示されます。

ナビゲーションの読み込み中にエラーが発生しました:コマンドhostInfoには認証が必要です。

ユーザーが持つ役割のリストは次のとおりです。

"roles": [{
    "role": "readWrite",
    "db": "moviesDB"
  },
  {
    "role": "dbAdmin",
    "db": "moviesDB"
  },
  {
    "role": "dbOwner",
    "db": "moviesDB"
  },
  {
    "role": "clusterMonitor",
    "db": "admin"
  },
  {
    "role": "dbAdmin",
    "db": "moviesDB"
  }
]

Mongo Shellとnode.jsドライバーを使用してコレクションを正常にクエリできますが、Compassは使用できません。誰かが私が間違っていることを教えてくれれば、感謝します。前もって感謝します!

8
wicccked

私も同じ問題で行き詰まりました。それは私を助けました:-

方法1:-cmd-1:

use admin
db.createUser({
user: "newUsername",
pwd: "password",
roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
})

cmd-2:

db.grantRolesToUser('newUsername',[{ role: "root", db: "admin" }])

方法2:-プロセスからMongoDBCompassCommunity.exeを強制終了してから、コンパスを再起動して、資格情報でログインしてみてください。

これも役立つかどうかをお知らせください。

4
Abhishek_Itachi

実行中のmongodbコンパスプロセスを終了し、コンパスを再起動します。

13
barrypicker