【AWS】RDSの接続方法まとめ!MySQL/PostgreSQL/Oracle別にわかりやすく解説
先生と生徒の会話形式で理解しよう
生徒
「AWS RDSに接続したいんですが、MySQLやPostgreSQL、Oracleでどう違うのか簡単に知りたいです!」
先生
「それぞれ接続方法は似ていますが、使うツールやクライアントが違って初心者にはわかりにくいですよね。今回はRDSの接続方法をエンジン別に丁寧にまとめます。」
生徒
「お願いします!どの接続方法でも対応できるようになりたいです!」
1. RDSへの接続に共通する基本手順
まず、RDSインスタンスへは以下の基本情報を使って接続します:
- エンドポイント(DNSホスト名)とポート番号(例:3306や5432)を取得
- 接続に利用するユーザー名とパスワード
- RDSインスタンスのセキュリティグループ設定で接続元IPを許可
- MySQL WorkbenchやpgAdmin、sqlplusなどのクライアントツールを利用
基本的には、AWSコンソールで表示されるエンドポイントと認証情報を使って接続する流れです。
2. MySQLの場合の接続方法
MySQL RDSへ接続する方法:
- MySQL WorkbenchなどGUIクライアントで接続設定:
ホスト名:エンドポイント(例:mydb.xxxx.rds.amazonaws.com)
ポート:3306
ユーザー名/パスワード:設定したもの
設定後、「テスト接続」で動作確認できます。
- コマンドラインから接続:
mysql -h [エンドポイント] -P 3306 -u ユーザー名 -p
パスワード入力で接続できます。
3. PostgreSQLの場合の接続方法
PostgreSQL RDSへは以下の方法で接続可能です:
- pgAdminを使う場合:
ホスト:エンドポイント
ポート:5432
ユーザー名/パスワード:設定したもの
接続情報を入力して接続できます。
- psqlコマンドラインで接続:
psql --host=[エンドポイント] --port=5432 --dbname=postgres --username=postgres
パスワード入力で接続され、セキュアに通信できます。
4. Oracleの場合の特徴
Oracle RDSの場合も基本的な接続情報(エンドポイント、ポート、ユーザー名、パスワード)は同様ですが、利用するクライアントが異なります。
例えば、sqlplusを使ってターミナルから接続したり、SQL DeveloperなどのGUIツールを使う方法が一般的です。
5. プログラムからの接続例(PHP/Pythonなど)
- PHP(MySQL)の例:PDOまたはmysqliを使用
$dsn = 'mysql:host=エンドポイント;port=3306;dbname=データベース名';
$dbh = new PDO($dsn, 'ユーザー名', 'パスワード');
接続前にセキュリティグループの設定が正しく行われていることを確認してください。
- Python(PostgreSQL)の例:`psycopg2`ライブラリを使用
import psycopg2
conn = psycopg2.connect(
host="エンドポイント",
port=5432,
dbname="postgres",
user="ユーザー名",
password="パスワード"
)
公式ドキュメントに接続例やエラーハンドリングも詳しく掲載されています。