Help us understand the problem. What is going on with this article?

Amazon Aurora Serverlessのインスタンスを作成し接続する

More than 1 year has passed since last update.

概要

AuroraServerlessのインスタンスを作成し、接続確認を行う。

環境

  • Amazon Linux 2
  • Aurora Serverless (MySQL 5.6互換)

前提条件

  • VPCが作成されていること
  • VPCにサブネットが2つ以上作成してあること
  • RDSに接続するEC2インスタンスが作成されていること

手順

サブネットグループの作成

DBサブネットグループはVPCに作成するサブネットのコレクションです。
VPCにサブネットが2つ以上作成してあることが必要となります。通常は、プライベートサブネットを指定します。

DB サブネットグループの作成をクリックします。
スクリーンショット 2018-11-22 2.38.20.png

以下の項目を入力します。

項目
名前 任意
説明 任意
VPC 作成済みのVPCを選択

スクリーンショット 2018-11-22 2.40.41.png

privateサブネットを追加します。
スクリーンショット 2018-11-22 2.43.08.png
作成をクリックして、DBサブネットグループの作成が完了です。

パラメータグループの作成

DBパラメータグループは、各DBのパラメーターの設定を行うことができます。MySQLのmy.cnfのようなものです。

デフォルトで作成されたパラメータグループは変更することができないので、
変更する予定がある場合は独自のパラメータグループを作成する必要があります。

パラメータグループの作成をクリックします。
スクリーンショット 2018-11-22 3.07.49.png

以下の項目を入力します。

項目
パラメータグループファミリー aurora5.6
タイプ                      DB Cluster Parameter Group
グループ名           任意
説明                    任意

タイプについて補足
タイプは、以下の2つを設定することが可能です。

  • DB Parameter Group
  • DB Cluster Parameter Group

Aurora Serverlessの場合、自動的にクラスタが作成されます。
クラスタにパラメータを適用するDB Cluster Parameter Groupを選択します。

スクリーンショット 2018-11-22 14.16.09.png

作成をクリックして、DBパラメータグループの作成が完了です。

パラメータグループの設定

作成したパラメータグループを選択し、パラメータの編集をクリックします。
スクリーンショット 2018-11-25 15.19.54.png

今回は、以下のパラメータを設定します。

名前 説明
character_set_client utf8mb4 クライアントから送信する際の文字コード
character_set_connection utf8mb4 クライアントから送信した文字コードの変換先
character_set_database utf8mb4 データベースの文字コード
character_set_filesystem utf8mb4 ファイルシステムの文字コード
character_set_results utf8mb4 サーバーがクライアントにクエリー結果を返信するときに使用する文字セット
character_set_server utf8mb4 サーバーのデフォルト文字コード
collation_connection utf8mb4_bin character_set_connectionに対する照合順序
collation_server utf8mb4_bin サーバーのデフォルトの照合順序
character-set-client-handshake 1 クライアントから送信された文字コードを無視しない設定
time_zone Asia/Tokyo 現在のタイムゾーン

変更のプレビューをクリックすると、修正したパラメータを確認できます。
修正内容に問題がなけれな、変更の保存をクリックします。

スクリーンショット 2018-11-22 14.39.39.png

パラメータグループの設定が完了しました。

セキュリティグループの作成

VPC > セキュリティグループを選択します。Create security groupをクリックします。
スクリーンショット 2018-11-25 16.29.58.png

項目を入力します。

項目
セキュリティグループ名 任意
説明 任意
VPC 作成済みのVPCを選択

スクリーンショット 2018-11-25 16.33.55.png
Createをクリックして作成完了です。

セキュリティグループの設定

作成したセキュリティグリープを選択し、Inbound Rulesタブを選択しEdit rulesをクリックします。
スクリーンショット 2018-11-25 16.39.24.png

以下の項目を設定します。

項目
タイプ MYSQL/Aurora
プロトコル TCP
ポート範囲 3306
カスタム 接続を許可するインスタンスのセキュリティグループのグループID

スクリーンショット 2018-11-25 16.49.12.png
Save rulesをクリックして、セキュリティグループの作成が完了です。

RDSの作成

データベースの作成をクリックします。
スクリーンショット 2018-11-25 17.00.36.png

エンジンのオプションでAmazon Auroraを選択します。
スクリーンショット 2018-11-25 17.01.37.png

今回は、Aurora Serverlessを使用するので、エディションはMySQL5.6との互換性を選択します。
スクリーンショット 2018-11-25 17.03.39.png

次へをクリックし、DB詳細を設定していきます。
Capacity typeはServerlessを選択します。
スクリーンショット 2018-11-25 17.05.55.png

詳細設定を行います。
キャパシティの設定では、今回はデフォルトの値を使用します。
スクリーンショット 2018-11-25 17.17.43.png

ネットワーク&セキュリテの設定を行います。

  • VPC : 作成済みのVPCを選択
  • サブネットグループ : サブネットグループの作成で作成したサブネットグループを選択
  • VPCセキュリティグループ : セキュリティグループの作成で作成したセキュリティグループを選択(デフォルトのVPCセキュリティグループは✖️ボタンで選択を解除)

スクリーンショット 2018-11-25 17.21.06.png

追加設定を確認すると、DBクラスターのパラメータグループには、パラメータグループの作成で作成したパラメータグループが設定されています。

スクリーンショット 2018-11-25 17.28.07.png

以上で、設定は完了です。データベースの作成をクリックします。
しばらくすると、DBクラスターの作成が完了します。
スクリーンショット 2018-11-25 17.44.05.png

DBへの接続を確認

WEBサーバーがあるEC2インスタンスに、SSHで接続します。

MySQLをインストール

すでにMySQLがインストールしてある場合は、このステップはスキップしてください。

$ sudo yum install -y mysql

DBに接続

DBへの接続コマンドは以下の通りです。

mysql -h {ENDPOINT} -P 3306 -u {Username} –p {Password}

DBクラスターの詳細より、データベースのエンドポイントを確認します。
スクリーンショット 2018-11-25 18.00.02.png

MySQLに接続が成功すると、以下のようなメッセージが表示されます。
初回起動時は、20秒ほど時間がかかります。

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.6.10 MySQL Community Server (GPL)

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

以上で、DBへの接続確認が完了しました。

参考

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away