DMSまたはmongoシェルを使用して、ApsaraDB for MongoDBコンソールにログインできます。 このトピックでは、mongo シェルを使用して ApsaraDB for MongoDB にログインする際に発生する一般的な問題と解決方法を説明します。
connection attempt failed というメッセージが表示される
問題:
#mongo -- hos t ali12345678.mongodb.rds.aliyuncs.com:3717 -- authenticationDatabase admin -u test -p xxx
MongoDBシェルバージョン: 3.2.3
DBプレフィックス:
接続先: 10.1.2.8:3717 /管理者
2016-05-31T15:25:58.940 0800 Wネットワーク10.*.*.8: 5000ミリ秒後に3717、あきらめました。
2016-05-31T15:25:58.943 0800 Eクエリエラー: サーバー10に接続できませんでした。* 。8:3717 (10.1.2.8) 、接続試行に失敗しました
at connect (src/mongo/shell/mongo.js:181:14)
at (connect):1:6 at src/mongo/shell/mongo.js:181
例外: 接続に失敗しました
考えられる原因 | 解決策 |
mongo shellコマンドを実行するElastic Compute Service (ECS) インスタンスとApsaraDB for MongoDBインスタンスは、同じ仮想プライベートクラウド (VPC) にないか、ネットワークタイプが異なります。 |
|
補足的なトラブルシューティング方法: telne t dds-ali123456789.mongodb.rds.aliyuncs.com 3717
などのTelnetコマンドを実行して、ApsaraDB for MongoDBインスタンスにアクセスできるかどうかを確認できます。
この図は、URLを解決でき、ポート3717が期待どおりに機能することを示しています。
Authentication failed というメッセージが表示される
問題:
#mongo -- hos t ali12345678.mongodb.rds.aliyuncs.com:3717 -- authenticationDatabase admin -u test -p xxx
MongoDBシェルバージョン: 3.2.3
接続先: 10.1.2.8:3717 /テスト
2016-05-31T15:50:18.623 0800 Eクエリエラー: 18認証に失敗しました。
at DB._authOrThrow (src/mongo/shell/db.js:1271:32)
at (auth):6:8
at (auth):7:2 at src/mongo/shell/db.js:1271
例外: ログインに失敗しました
考えられる原因 | 解決策 |
データベースへのログインに使用したユーザー名が正しくありません。 | 正しいユーザー名でデータベースにログインします。 |
データベースへのログインに使用したパスワードが正しくありません。 | 正しいパスワードでデータベースにログインします。 |
ログインユーザーが認証データベースと一致しません。 | ユーザーを认证データベースと照合します。 たとえば、rootユーザーはadminデータベースのユーザーであるため、このユーザーをデータベースのログインに使用する場合は、認証データベースをadminとして割り当てる必要があります。 |
クライアントのバージョンが古くなっています。 | mongoシェルのバージョンが3.0以降であることを確認してください。 mongo シェルのインストール方法の詳細については、「MongoDB のインストール」をご参照ください。 他のプログラミング言語のクライアントのバージョン要件については、『ドライバー互換性』をご参照ください。 |
isMaster コマンドを実行するとネットワークエラーが発生する
問題:
#mongo -- hos t ali12345678.mongodb.rds.aliyuncs.com:3717 -- authenticationDatabase test -u test -p xxxxxx
MongoDBシェルバージョンv3.4.10
接続先: mongod b:ali1234567878.mongodb.rds.aliyuncs.com:3717 /
2018-12-18T14:26:11.946 + 0800 E QUERY [thread1] エラー: ホスト 'ft12345678 .mongodb.rds.aliyuncs.comでコマンド 'isMaster' を実行しようとしたときのネットワークエラー: 3717 ':
connect @ src/mongo/shell/mongo.js:237:13
@ (接続):1:6
例外: 接続に失敗しました
考えられる原因 | 解決策 |
ECSインスタンスのIPアドレスがApsaraDB for MongoDBインスタンスのホワイトリストに含まれていません。 | ECSインスタンスのIPアドレスをApsaraDB for MongoDBインスタンスのホワイトリストに追加します。 詳細については、「ApsaraDB For MongoDBインスタンスのホワイトリストまたはECSセキュリティグループの設定」をご参照ください。 |
Timeout while receiving message というメッセージが表示される
org.springframework.data.mo ngodb.UncategorizedMongoDbException: メッセージの受信中のタイムアウト。ネストされた例外はcom.mo ngodbです。MongoSocketReadTimeoutException: メッセージの受信中のタイムアウト
考えられる原因 | 解決策 |
異常な低速クエリがインスタンスリソースを占有し、CPU使用率が急増またはピークに達する原因となります。 | スロークエリを確認してください。 インデックスを作成して最適化することを推奨します。 詳細については、「」をご参照ください。ApsaraDB for MongoDBの高CPU使用率のトラブルシューティング方法を教えてください。. |
タイムアウト設定など、アプリケーション接続プールの設定が正しくありません。 | 詳細については、「」をご参照ください。接続数をクエリして制限するにはどうすればよいですか? |