概要
この記事では、RDSインスタンスへの接続障害のトラブルシューティング方法について説明します。
手順
次の5つの側面から問題をトラブルシューティングできます。
- インスタンスのステータスとインスタンス接続情報の確認
- (共通) チェックホワイトリストが正しく設定されているかどうか
- (共通) データベースのパフォーマンスを確認する
- (共通) チェッククライアント
- イントラネット経由でECSインスタンスからRDSインスタンスにアクセスできません
手順1: インスタンスのステータスとインスタンス接続情報の確認
- apsaradb for RDSコンソールにログインします。 インスタンスリストでインスタンスのステータスを表示し、インスタンスのステータスが正常であることを確認します。 異常なインスタンスのステータスやロックなどの問題のトラブルシューティング。 インスタンスがロックされている場合は、インスタンススペースがいっぱいになったら、「MySQLインスタンスの自動ロックのトラブルシューティング方法」をご参照ください。 インスタンスがロックされている間、アプリケーションはRDSデータベースに対して読み取りまたは書き込み操作を実行できません。 ビジネスが許可されている場合は、インスタンスの再起動を試みることができます。 注意して進めてください。
- データベースに接続するためのコードまたはツールで、データベースに接続するための情報が正しいかどうかを確認します (イントラネットとインターネットのアドレスを確認してください) 。 詳細については、「RDSデータベースへの接続方法」をご参照ください。
手順2: ホワイトリストが正しく設定されているかどうかを確認する
RDSインスタンスのIPホワイトリストに正しいローカルデバイスIPアドレスが追加されていることを確認してください。 データベースのホワイトリストに0.0.0.0/0
を一時的に追加します。 ホワイトリストの設定後にデータベースに正常にアクセスできる場合は、ホワイトリストの設定に問題があることを示します。 0.0.0.0/0
ホワイトリストを削除すると、ECSセキュリティグループホワイトリストのIPアドレスがすぐに有効になります。 ホワイトリストの考慮事項の詳細については、次のコンテンツをご参照ください。 ホワイトリストの追加方法の詳細については、「ホワイトリストの設定」をご参照ください。
127.0.0.1
されます。 デフォルトのIPアドレス127.0.0.1は、どのデバイスもRDSインスタンスにアクセスできないことを示します。 したがって、ピアECSインスタンスのIPアドレスをホワイトリストに追加する必要があります。
はデフォルトのアドレスのみで- ホワイトリストは
0.0.0.0
に設定されています。 有効な形式は0.0.0.0/0
です。
注
: 0.0.0.0/0
は、任意のデバイスがRDSインスタンスにアクセスできることを示します。 注意して使用してください。
- 拡張ホワイトリストモードが有効になっているかどうかを確認します。 詳細については、「拡張ホワイトリストモード」をご参照ください。 有効になっている場合は、次のチェックを実行します。
- RDSインスタンスがVPCに存在し、その内部エンドポイントを使用してアクセスされる場合、ECSインスタンスの内部IPアドレスがデフォルトVPCというラベルの付いたIPアドレスホワイトリストに追加されていることを確認してください。
- RDSインスタンスがクラシックネットワークにあり、内部エンドポイントを使用してアクセスする場合は、ECSインスタンスの内部IPアドレスがデフォルトのクラシックネットワークというラベルの付いたIPアドレスホワイトリストに追加されていることを確認してください。
- RDSインスタンスがクラシックネットワークにあり、インターネット経由でアクセスされている場合は、ECSインスタンスのパブリックIPアドレスがデフォルトのクラシックネットワークというラベルの付いたIPアドレスホワイトリストに追加されていることを確認してください。
- ホワイトリストに追加したパブリックIPアドレスが無効です。 理由は次のとおりです。
- パブリックIPアドレスは動的に変更されます。
- パブリックIPアドレスを照会するために使用されるツールまたはWebサイトは、誤ったIPアドレスを提供します。 ソリューションの詳細については、以下のトピックを参照してください。
手順3: データベースのパフォーマンスを確認する
RDSインスタンスのパフォーマンスモニタリング情報を表示して、リソースが不足しているかどうかを判断できます。
- 現在のデータベースへの接続数を確認します。
- 接続の完全な数は、通常、アイドル接続またはアクティブ接続が多すぎるためです。 インスタンス仕様に対応する最大接続データを確認するには、「プライマリインスタンス仕様リスト」をご参照ください。
- コード内の接続設定が妥当であるかどうか、およびほとんどの接続が時間内に閉じられず、RDSリソースが消費され、最終的に接続数がいっぱいになるかどうかを確認します。 この問題の原因と解決策については、「RDS For MySQLでの完全接続のケースの処理」または「RDS for PostgreSQL」をご参照ください。
- ビジネスが正常に増加する場合は、インスタンス設定をアップグレードすることを推奨します。
説明
注: アップグレードプロセス中に約30秒の一時的な切断があるかもしれません。 私達はユーザーがユーザーのビジネスの正常な操作を保障するために再接続のメカニズムのよい仕事をすることを推薦します。 詳細については、以下をご参照ください。 RDSの使用方法
- ネットワークトラフィックが正常で、ネットワークトラフィックの占有率が高いかどうかを確認します。 この場合は、「スローログの詳細の表示」をご参照ください。スローログを表示し、クエリ結果に基づいてスローSQL文を最適化します。
- その他のパフォーマンスの問題については、「高CPU、メモリ、スペース、IOPS使用率の解決」をご参照ください。
ステップ4: クライアントの確認
他の方法でデータベースに接続し、それが現在のクライアントツールの問題であるかどうかを確認できます。 詳細については、「MySQLインスタンスへの接続」をご参照ください。
イントラネット経由でECSインスタンスからRDSインスタンスにアクセスできません
ECSインスタンスがイントラネットを介してRDSインスタンスにアクセスできない場合は、[RDSインスタンスに接続できないという問題の解決] を参照して問題を解決します。
適用可能性
- RDS