EC2 インスタンスから RDS への接続: ファイアウォールと DNS のアドレス指定
EC2 インスタンスから RDS インスタンスに接続しようとすると、ユーザーは「MySQL サーバーに接続できません」エラーが発生します。この問題は、ファイアウォール設定と DNS 設定の組み合わせが原因で発生します。
ファイアウォール設定
EC2 インスタンスと RDS インスタンス間の接続を確立するには、EC2 インスタンスのセキュリティ グループでRDS インスタンスのポート 3306 への受信トラフィック。さらに、RDS インスタンスのセキュリティ グループは、EC2 インスタンスの IP アドレスまたは IPv4 CIDR ブロックからの受信接続を許可する必要があります。
RDS セキュリティ グループを設定するには、次の RDS インスタンスに移動します。 AWS マネジメントコンソールで「セキュリティグループルール」を選択します。 [編集] をクリックし、EC2 インスタンスの IP アドレスまたは CIDR ブロックからのトラフィックを許可する受信ルールを追加します。
DNS 解決
接続を成功させるには、EC2 インスタンスが必要です。 RDS インスタンスの完全修飾ドメイン名 (FQDN) をその IP アドレスに解決できるようになります。これは、次のいずれかの方法を使用して、EC2 インスタンスの DNS 設定が Amazon DNS を使用するように適切に構成されていることを確認することで実現できます:
Resolv.conf の更新: 追加「/etc/resolv.conf」ファイルに次の行を追加します:
nameserver 169.254.169.253
Using Metadata Server: メタデータ サーバーに DNS 情報を問い合わせます:
echo $$ "cat /opt/aws/bin/cfn-init -s $$AWS::StackName -r Ecinstance -q ip"
これらの設定が完了すると、EC2 インスタンスと RDS インスタンスの間の接続が確立され、EC2 インスタンスから MySQL コマンドを正常に実行できるようになります。
以上がここでは、質問形式を工夫し、中心的な問題と解決策を強調するタイトルのオプションをいくつか示します。 オプション 1 (直接およびクリア): * EC2 から RDS への接続: 「Ca」のトラブルシューティング方法を教えてください。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。