- 公開日
- 最終更新日
【RDS】EC2と接続してみた
この記事を共有する
目次
はじめに
皆さんこんにちは!パーソル&サーバーワークスの榎本です。
今回はAWSで扱えるデータベースのひとつである、Amazon RDS(以下、RDS)についての記事を書いていこうと思います!
RDSを使うことで、データベースの運用管理を大幅に簡素化することができます!
前回の記事で構築したAmazon EC2(以下、EC2)インスタンスと接続する手順をお伝えしたいと思います。
本記事の目的
- RDSを構築し、EC2インスタンスから接続できるようになること
前提
構築手順
RDS用セキュリティグループ作成
- AWSマネジメントコンソールにログインして、右上のリージョン選択箇所にて[東京]リージョンを選択する

- 左上の検索バーにて[VPC]を検索して開く

- 左のナビゲーションペインから[セキュリティグループ]を選択し、[セキュリティグループを作成]をクリックする

- 以下設定を入力し、[セキュリティグループを作成]をクリックする
- ・セキュリティグループ名:<名前>-yyyymmdd-rds-sg(以下例の場合、enomoto-20260128-rds-sg)
- ・説明:<名前>-yyyymmdd-rds-sg(以下例の場合、enomoto-20260128-rds-sg)
- ・VPC:<作成したVPCのIDを選択>(以下例の場合、enomoto-20251210-vpcのIDを選択)
- [ルールを追加]をクリックし、以下設定を入力する
- ・タイプ:MySQL/Aurora
- ・ソース:EC2用セキュリティグループのIDを選択(以下例の場合、enomoto-20260126-ec2-protected-sg)

- セキュリティグループが作成されたことを確認する

DBサブネットグループ作成
- 左上の検索バーにて[Aurora and RDS]を検索して開く

- 左のナビゲーションペインから[サブネットグループ]を選択し、[DBサブネットグループを作成]をクリックする

- 以下設定を入力する
- ・名前:<名前>-yyyymmdd-db-subnet-group(以下例の場合、enomoto-20260128-db-subnet-group)
- ・説明:<名前>-yyyymmdd-db-subnet-group(以下例の場合、enomoto-20260128-db-subnet-group)
- ・VPC:<作成したVPCのIDを選択>(以下例の場合、enomoto-20251210-vpcのIDを選択)
- [サブネットを追加]セクションで以下設定を入力し、[作成]をクリックする
- ・アベイラビリティーゾーン:ap-northeast-1a、ap-northeast-1cにチェック
- ・サブネット:プライベートサブネット2つにチェック(以下例の場合、enomoto-20251210-private-subnet-1a、enomoto-20251210-private-subnet-1c)

- DBサブネットグループが作成されたことを確認する

RDSインスタンス作成
- 左のナビゲーションペインから[データベース]を選択し、[データベースの作成]をクリックする

- 以下設定を入力する
- ・データベースの作成方法を選択:フル設定
- ・エンジンのタイプ:MySQL
- ・バージョン:デフォルト
- ・テンプレート:無料利用枠

- ・DBインスタンス識別子:<名前>-yyyymmdd-rds(以下例の場合、enomoto-20260128-rds)
- ・マスターユーザー名:admin
- ・認証情報管理:セルフマネージド
- ・マスターパスワード:任意のパスワード(以下例の場合、Password12345!!!!!)
- ・パスワードを確認:任意のパスワード(以下例の場合、Password12345!!!!!)

- [インスタンスの設定]セクションで以下設定を入力する
- ・DBインスタンスクラス:db.t4g.micro
- [ストレージ]セクションで以下設定を入力する
- ・ストレージタイプ:汎用SSD(gp3)
- ・ストレージ割り当て:20 (GiB)

- [接続]セクションで以下設定を入力する
- ・Virtual Private Cloud (VPC):<作成したVPCのIDを選択>(以下例の場合、enomoto-20251210-vpcのIDを選択)
- ・DBサブネットグループ:<作成したDBサブネットグループを選択>(以下例の場合、enomoto-20260128-db-subnet-group)
- ・既存のVPCセキュリティグループ:<作成したRDS用セキュリティグループを選択>(以下例の場合、enomoto-20260128-rds-sg)
- ・アベイラビリティーゾーン:ap-northeast-1a

- [追加設定]をクリックして展開し、以下設定を入力する
- ・最初のデータベース名:testdb

- ・最初のデータベース名:testdb
- [データベースの作成]をクリックする

- データベースの作成が開始され、ステータスが「作成中」になることを確認する ※時間がかかります

- ステータスが「利用可能」になったことを確認し、データベース名をクリックして詳細を表示する

- [接続とセキュリティ]タブでエンドポイントをコピーしておく

EC2にDBクライアントインストール
- 左上の検索バーにて[EC2]を検索して開く

- 左のナビゲーションペインから[インスタンス]を選択し、プロテクテッドサブネットに構築した既存のEC2インスタンスにチェックを入れて[接続]をクリックする

- [セッションマネージャー]タブを選択し、[接続]をクリックする

- 以下コマンドを実行してユーザーを変更し、DBクライアントをインストールする
sudo su - ec2-user
sudo dnf install -y mariadb105

RDSへの接続確認
- 以下コマンドを実行してRDSに接続する
mysql -h <RDSエンドポイント> -u admin -p
パスワード入力を求められたら任意のパスワード(以下例の場合、Password12345!!!!!)を入力する

- 以下コマンドを実行してデータベース一覧を確認する
show databases;

- 以下コマンドを実行してtestdbデータベースを使用する
use testdb;
- 以下コマンドを実行してテストテーブルを作成し、データを挿入する
CREATE TABLE users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), email VARCHAR(100));
INSERT INTO users (name, email) VALUES ('Masaki Enomoto', 'masaki.enomoto@example.com');
INSERT INTO users (name, email) VALUES ('Maco Enomoto', 'maco.enomoto@example.com');
- 以下コマンドを実行してデータが正常に挿入されたことを確認する
SELECT * FROM users;
- 以下コマンドを実行してRDSから切断する
quit

RDS停止
- RDSコンソールを開き、左のナビゲーションペインから[データベース]を選択し、作成したRDSを選択して[アクション]-[一時的に停止]をクリックする

- 了承する旨の文章にチェックを入れて、[一時的に停止]をクリックする

- ステータスが「一時的に停止済み」と表示されていることを確認する
※1週間後に自動起動するため注意

まとめ
今回の記事にてRDSを構築し、EC2インスタンスからデータベースに接続することができました!
設定値が多くて設定に迷う箇所もあるかと思いますが、少しずつ各DBの知識をつけていけると良いと思います!
次回はALBの構築についての記事を執筆いたします!引き続きお付き合いいただけますと幸いです!
この記事は私が書きました
榎本 将希
記事一覧2024,2025 Japan All AWS Certifications Engineers サッカー観戦とサウナが好きです! 機械学習とAIを勉強中です!