はじめに
RDSにうまく接続できない時に考えられる原因と切り分け方について、AWSの方が動画を出していたので内容をメモ。
MySQLを例にする。MySQLのポートは3306と仮定する。
(現象1) MySQLコマンドの結果が帰ってこないとき
別ターミナルで以下のコマンドを打つ。
netstat -an | grep 3306
結果パターン1
(略) SYN_SENT
上記のような出力の場合、リクエストを送ったがレスポンスが帰ってきていないことがわかる。その場合は、以下に問題がないか見直す。
- セキュリティグループの設定
- 接続元のFWの設定
(現象2) Access Denied
→IDとパスワードが正しいことを確認する。
(現象3) Unkown MySQL Server Host
→DNSの名前解決ができていない状態。この場合は、以下を確認する。
- ホスト名が正しいか
- 利用しているDNSが名前解決できる状態か(nslookup,dig,ncなどのコマンドを利用する)
(現象4) 上記がすべて問題ないにも関わらず接続に失敗するとき
以下の可能性を確認する。
- DBインスタンスのステータスが正常であること
- 同時接続数の上限に達していないこと
- DBのリソースが飽和していないこと