AWSのEC2からRDS(MySQL)に接続するサンプルです。
目次
サンプル | 目的 |
VPCの中にサブネットを作成する | |
RDS用のセキュリティグループを作成する | |
RDSを作成する | |
RDSに接続する | |
注意 | DBインスタンスの停止は7日間のみ |
目的
- EC2にSSH接続をしてRDSのmysqlに接続します。
- RDSのセキュリティグループをプライベートにします。
- EC2が作成済みであることが前提です。
AWS EC2を作成/削除するサンプル
VPCの中にサブネットを作成する
1.AWSマネジメントコンソールにログインします。
2.検索入力欄で「VPC」と入力し、表示された「VPC」をクリックします。
3.画面左の「サブネット」をクリックします。
4.画面右にある「サブネットを作成」をクリックします。
5.サブネットを設定するVPCを選択します。
選択すると「IPv4 CIDR」の値が選択したVPCにあわせて表示されます。
サブネットの設定では、「サブネット名」を入力し、「アベイラビリティーゾーン」を選択します。
アジアパシフィック(東京)/ap-northeast-1aを選択しました。
「IPv4 CIDRブロック」は、10.0.20.0/28としました。最後に「サブネットを作成」ボタンを押すとサブネットが作成されます。ルートテーブルの設定は行いません。
複数のAZ
RDSを使用する際は、複数のAZ(アベイラビリティーゾーン)のサブネットを用意する必要があります。
上記手順でもう一つサブネットを作成します。
サブネット名はtest-subnet-rds、AZはap-northeast-1c、CIDRは10.0.21.0/28で作成しました。
RDS用のセキュリティグループを作成する
1.検索入力欄で「EC2」と入力し、表示された「EC2」をクリックします。
2.セキュリティグループを作成ボタンを押します。
3.「セキュリティグループ名」と「説明」に任意の値を入力します。
「VPC」は、作成したVPCを指定します。すでに別のVPCの値が入っていた場合は一旦クリアすると別のVPCを選択できるようになります。
「インバウンドルール」で「ルールの追加」をクリックしMYSQL/Auroraを選択し、カスタムでは、testと入力し作成したtest-security1を選択します。完了後、「セキュリティグループを作成」をクリックします。
RDSを作成する
1.検索入力欄で「RDS」と入力し、表示された「RDS」をクリックします。
2.画面左の「データベース」をクリックします。
3.「データベースの作成」をクリックします。
4.エンジンのタイプは、「MySQL」を選択します。
作成方法 | 標準作成 |
バージョン | MySQL 8.0.28 |
テンプレート | 無料利用枠 |
DB インスタンス識別子 | test-db-mysql |
マスタユーザー名 | admin |
DBインスタンスクラス | db.t3.micro |
接続のVPC | test-vpc2 |
サブネットグループ | 新しいDBサブネットグループの作成 |
パプリックアクセス | なし |
vpcセキュリティグループ | 既存の選択で、test-security-rds |
アベイラビリティーゾーン | ap-northeast-1a |
データベース認証 | パスワード認証 |
最初のデータベース名 | test_database_first_rds |
自動バックアップを有効 | チェックを外す |
暗号化を有効化 | チェックを外す |
3.一覧で起動するデータベースをチェックし「アクション」から「開始」クリックで起動します。
起動するまで数分かかります。
RDSに接続する
1.Tera TermのSSHでEC2に接続します。
Tera TermのSSHでEC2に接続する
2.RDSのMySQLに接続するためのMySQLをインストールします。
sudo yum -y install mysql
インストール済みかの確認は、yum list installed | grep mariadbで行います。
インストール済みの場合はmariadbの行が表示されます。
3.RDSの接続情報を取得します。
画面左のデータベースをクリックし、一覧の作成したMySQLのリンクをクリックし、接続とセキュリティタブにあるエンドポイントの値をコピーします。
4.RDSへの接続のコマンドを入力します。
mysql -h test-db-mysql.c5yyb8r5h2py.ap-northeast-1.rds.amazonaws.com -u admin -p
この後パスワードを入力します。
5.成功すると以下のようにMySQLへログインします。
DBインスタンスの停止は7日間のみ
DBインスタンスを停止した場合でもAWSの仕様で8日目に自動で起動するので注意が必要です。
関連の記事