1. ホーム
  2. mongodb

[解決済み] Mac OS のターミナルからリモートの Mongo サーバーに接続するにはどうしたらいいですか?

2022-11-04 19:13:53

質問

MacBookのターミナルでmongoシェルにドロップしたいと思っています。 しかし、私はクラウドで実行されているMongoインスタンス(Herokuアドオン経由のcompose.ioインスタンス)に接続することに興味があります。 私はMongoDBのURIから名前、パスワード、ホスト、ポート、およびデータベース名を持っています。

mongodb://username:[email protected]:10011/my_database

Homebrew を使って MacBook に mongodb をインストールしたのは、Mac 上で Mongo を実行したいからではなく、このリモート データベースに接続するために mongo シェル プログラムにアクセスするためです。

しかし、私が望む完全なシェル アクセスを得るための正しいコマンドを見つけることができません。 ここにある手順を使用すると http://docs.mongodb.org/manual/reference/program/mongo/ (検索 "remote") 私は、接続のように見えるものを得ることができましたが、私のユーザー名またはパスワードを与えなければ、私は完全に接続されていません。 実行中 db.auth(username, password) を実行すると 1 が返されますが (ユーザ名とパスワードが正しくない場合は "auth fails" が返されます)、次のコマンドを実行すると "unauthorized" エラー メッセージが表示されます。 show dbs コマンドを発行すると、エラー メッセージが表示されます。

どのように解決するのですか?

接続は問題なくできているけれども、を実行するための十分な権限を持っていない可能性があります。 show dbs .

コマンドラインでauthを渡せば、db.authを実行する必要はありません。

mongo somewhere.mongolayer.com:10011/my_database -u username -p password

接続したら、コレクションを見ることができますか?

> show collections

もしそうなら、すべてがうまくいっていて、ただデータベースの管理者権限を持っていなくて show dbs