AWS RDS入門(RDSでデータベースを構築する)

AWS でデータベースを構築
MySQLデータベースをRDSを使ってEC2から接続します。
接続するためのセキュリティグループの設定も行います。
目的

主なコンポーネント
- RDS
AWSのマネージドなリレーショナルデータベースす。ハードウェアを気にすることなくデータベースを構築することができます。 - セキュリティグループ
AWSコンポーネントのファイアーウォールです。今回の記事ではデータベースに接続可能なのはEC2のみに制限します。
RDSを構築する
- RDSダッシュボードを表示する
マネジメントコンソールの左上の「サービス」を押すと表示されるメニューから「データベース」を選択します。表示されるサブメニューから「RDS」を選択します。 - データベースの作成を開始する
「データベースの作成」ボタンを押してデータベースの作成を開始します。 - データベースの設定を入力する①
「データベース作成方法を選択」は「簡単に作成」を選択します。「設定」は「MySQL」を選択します。「DBインスタンスサイズ」は「無料利用枠」を選択します。 - データベースの設定を入力する②
「DBインスタンス識別子」「マスターユーザー名」「マスターパスワード」は自由に設定します。
「DBインスタンス識別子」は構築するMySQLの名前のようなものです。今回は練習用なので「mysql」などを入れておけばよいでしょう。
「マスターユーザー名」と「マスターパスワード」は構築するMySQLであらゆる権限を持つ特権ユーザーとなります。「マスターユーザー名」は慣例である「admin」で構いませんが「パスワード」は推測されにくい値を設定するようにしましょう。ここで指定した「マスターユーザー名」と「マスターパスワード」は後ほどEC2からの接続に使用するため覚えておきます。
入力したら「データベースの作成」ボタンを押します。 - データベースが作成されるのを待ちます
データベース一覧に切り替わりデータベース作成中の状態になるので、作成が完了するまで待ちます。 - 作成されたデータベースの詳細を確認します
データベースの作成が完了したらデータベース名のリンク(以下のスクリーンショットではmysql)を押します。 - MySQLのエンドポイントを覚えてセキュリティグループの設定を始めます
EC2からの接続に使用する「エンドポイント」を覚えておきます。
つぎに「接続とセキュリティ」タブの「セキュリティ」の「VPCセキュリティグループ」項目の下のリンクを押します。(以下ののスクリーンショットでは「sg-0ea6476d34f6d6715」の部分です。) - インバウンドルールを表示します
セキュリティグループ編集画面が表示されるので、画面下部のタブから「インバウンドルール」を選択します。 - インバウンドルールの設定変更を始めます
「インバウンドのルールを編集」ボタンを押します。 - インバウンドルールに新しいルールを追加します
左下の「ルールを追加」ボタンを押します。 - 新しいルールの設定を入力します
新しいルールの行が追加されます。
「タイプ」に「MYSQL/Aurora」を設定し、「ソース」にEC2の属するセキュリティグループを設定します。
入力が終わったら「ルールを保存」ボタンを押します。 - インバウンドルールが増えたことを確認します
セキュリティグループのインバウンドタブに入力したルールが追加されていることを確認します。
これでセキュリティグループの設定は完了です。 - EC2にセッションマネージャーで接続する
EC2にセッションマネージャーで接続します。 - EC2にMySQLインストール用のリポジトリを追加する
AmazonLinux2にはMySQLのリポジトリが登録されていません。このため以下のコマンドでMySQLのリポジトリを追加します。
sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm -y

15. EC2にMySQL接続するためのクライアントをインストールする
MySQL接続のためのクライアントをインストールするために以下のコマンドを実行します。
sudo yum install -y mysql-community-client
16. RDSに接続する
MySQL接続のコマンドを使用してMySQLに接続します。hostnameには7項で覚えた「エンドポイント」を、usernameには「マスターユーザー名」を指定します。
コマンド実行後にパスワードを聞かれるので「マスターパスワード」を入力します。
mysql -h hostname -u username -p
17. MySQLのデータベース一覧を表示する
MySQLのデータベース一覧を表示するクエリ「show databeses;」を実行します。
show databases;
18. MySQL接続を終了する
MySQL接続を終わるために「exit」コマンドを入力します。
exit
19. セッションマネージャーを終了する
セッションマネージャーを終わるために「exit」コマンドを入力します。
exit
20. EC2を停止する
確認が終わったのでEC2を停止します。
21. MySQLの停止を始める
確認が終わったのでMySQLを停止します。
RDSメニューの「データベース」を選択し、停止する
「mysql」データベースの左側のラジオボタンを選択して「アクション」から「停止」を選択します。
22. RDSを停止する
DBインスタンスの停止の確認ダイアログが表示されます。
スナップショットの作成は「なし」を選択し、「はい、今すぐ停止します」ボタンを押します。スナップショットとはバックアップのことです。今回の手順ではデータベースにデータを入れていないのでバックアップは不要です。
23. RDSの一覧でMySQLが停止するのを待ちます
データベース一覧の「mysql」のステータスが「停止済」になったら停止の完了です。