RDSで作成したDB(Postgre SQL)に接続できません。

0

VSCodeからDBに接続するスクリプトを実行しようとすると以下のエラーが出力されてしまいます。接続できるようになるために確認が必要なポイントを教えていただきたいです。

・セキュリティグループはインバウンドアウトバウンド共にすべてのトラフィックかつ0.0.0.0/0です ・ネットワークACLに関しても同上です ・サブネットは3つあり、2つはNATゲートウェイで1つがインターネットゲートウェイですが ・Python スクリプト内で使用されているデータベース接続情報(ホスト名、ポート番号、ユーザー名、パスワード、データベース名)は正しいことを確認済です ・ネットワーク接続: Python スクリプトを実行しているマシンから RDS インスタンスにネットワーク接続が可能かどうかを確認 ・ncコマンドや telnet コマンドでも同様にタイムアウトしてしまいます

username@MacBook-Air ProjectName % python db_script.py Something's wrong with mydb-instance.region.rds.amazonaws.com:5432. Exception type is timed out The error 'connection to server at "mydb-instance.region.rds.amazonaws.com" (xx.xx.xx.xx), port 5432 failed: Operation timed out Is the server running on that host and accepting TCP/IP connections? ' occurred Traceback (most recent call last): File "/Users/username/Desktop/ProjectName/db_script.py", line 123, in <module> execute_query(connection, create_my_table_query) File "/Users/username/Desktop/ProjectName/db_script.py", line 57, in execute_query connection.autocommit = True AttributeError: 'NoneType' object has no attribute 'autocommit' username@MacBook-Air ProjectName % psql -h mydb-instance.region.rds.amazonaws.com -p 5432 -U MyUser -d my_db
psql: error: connection to server at "mydb-instance.region.rds.amazonaws.com" (xx.xx.xx.xx), port 5432 failed: Operation timed out Is the server running on that host and accepting TCP/IP connections?

1回答
0
承認された回答

以下をご確認されると良いと思います。

  • DBインスタンスがパブリックサブネットに作成されているか。
  • DBインスタンスのパブリックアクセス設定が有効化されているか

DB インスタンスがパブリックかプライベートかを確認するには、AWS Management Console を使用してインスタンスの [Connectivity & security] (接続とセキュリティ) タブを確認します。[Security] (セキュリティ) では、「パブリックアクセス可能」の値を見つけることができます。プライベートの場合は [No] (いいえ)、パブリックの場合は [Yes] (はい) です。

https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_ConnectToPostgreSQLInstance.html

(余談となりますが、DBインスタンスをインターネットから直接接続可能にする構成はsgなどで制限するとしてもセキュリティ上好ましくはないため気をつけてご利用ください。)

profile picture
エキスパート
回答済み 10ヶ月前
profile picture
エキスパート
レビュー済み 10ヶ月前

ログインしていません。 ログイン 回答を投稿する。

優れた回答とは、質問に明確に答え、建設的なフィードバックを提供し、質問者の専門分野におけるスキルの向上を促すものです。

質問に答えるためのガイドライン