mLabでホストされているデータベースがあり、それをCompassに接続しようとしています。接続文字列で指定されたホストとポートを使用していますが、エラーが表示されています、ここに私のスクリーンショットがあります:
私が間違っていることを教えてください。
ありがとう
同じ問題を次のように解決できました:
A. mlabのデータベースに移動し、タブで「users」を選択します exmple_img
B.新規ユーザーの作成例:ユーザー名:管理者パスワード:123456
C:コンパスに移動し、このように入力します
接続パスの例:ds012345.mlab.com:56789/myDBname
ホスト名:ds012345.mlab.com
ポート:56789
認証:ユーザー名/パスワード
ユーザー名:admin //またはステップAで作成したユーザーの名前
パスワード:ステップAで作成したユーザーのパスワード
認証データベース:myDBname // mlabのデータベースの名前
私はちょうど同じ問題を抱えていました。
MongoDB Compassのバージョンを更新して修正しました。バージョン1.15.4で問題は発生していません。
また、認証データベースの値は「admin」ではなく、接続するDBの名前にする必要があります。
接続を簡単にするために、接続文字列全体をクリップボードにコピーすることをheしないでください。コンパスはそれを検出し、接続フォームに自動的に入力することを提案します。
私が抱えていた問題は、Authentication Database
コンパスが自動的に入力されることでしたが、私のセットアップでは正しくありませんでした。デフォルトでは、これはadmin
を指していましたが、ユーザーが関連付けられているデータベースを指す必要があります。
要約:admin
のデータベースは存在しませんでした。
それを除外するために、あなたが指しているデータベースを再確認してください。 ds739176/database_name
のような名前である必要があります。ここで、database_name
は、ご想像のとおり、データベースの名前です。
お役に立てれば。
必要な資格情報は、MLabへのログイン資格情報ではなく、データベースユーザー資格情報です。
mLabでDBをクリックします。
[ユーザー]タブに移動して、新しいユーザーを作成します。
作成されたユーザー資格情報を使用してdbにアクセスします。
認証データベースをデータベースに設定します。
同じ問題がありました。 MongoDBのURLはコードで機能していましたが、Authentication failed
はMongoDB Compassで表示されていました。
チェックすると、mongodbのパスワードはiam%40me1234
でした。
ここでは、%40
文字のパスワードに@
HTML 16進コードを使用しています。
したがって、MongoDB Compassでiam@me1234
のようなパスワードに元の文字を使用する場合は、うまく機能します。
16進数の完全なリストを次に示します codes