3.2 MySQLクライアントからの接続(演習)

次にMySQLクライアントからの接続を行ないます。まずは接続のための情報を確認しましょう。

1. Amazon RDSの左メニューから「データベース」をクリックし、「mine-db-1」をクリックします。

2. 表示された詳細から、エンドポイントとポートの値を確認しておきましょう。

ポイント

・エンドポイントはドメイン名に当たるものです。EC2など別のコンピューターからデータベースにアクセスする場合に必要です。

・ポート番号はMySQLデフォルト設定の3306となっています。

3. EC2インスタンスにインストールしたMySQLクライアントを使ってアクセスします。EC2インスタンスにて下記のコマンドを実行します。ユーザー名にはDBインスタンスの作成時に指定したマスターユーザー名を設定し、ホスト名には手順2で確認したエンドポイントを指定します。エンドポイントは長いですので、コピペすると間違いがありません。

$ mysql -u (ユーザー名) -h (ホスト名) -p

入力後、下の画面のようにパスワードを求められますので、こちらもDBインスタンスの作成時に指定したマスターパスワードを入力し、Enterキーを押します。パスワード入力時の画面の見た目に変化はありませんが、入力は行われていますので、正しくキータイプするように注意しましょう。

Enter password:

 

4. パスワードを入力してEnterキーを押すと、しばらくして下記のように表示されます。接続が失敗したことを示すメッセージです。

接続が失敗した理由は、DBインスタンスに設定したセキュリティグループがEC2インスタンスからの通信を許可していないからです。

 

5. セキュリティグループの設定を変更します。VPC左メニューから下図①~④の手順で「インバウンドルールを編集」をクリックします。②では「mine_db_group」を選択してください。

6. 「ルールを追加」(①)をクリックし、タイプから「MySQL/Aurora」(②)をクリックします。ソースは「カスタム」で「mine_web_group」(③)を選択します。選択したら「ルールを保存」(④)をクリックします。

ポイント

ソースにはセキュリティグループを設定することも可能です。今後増設したEC2インスタンスに対し同じ「mine_web_group」を適用しグループとしてまとめておくと、別のセキュリティグループで「mine_web_groupが適用されたEC2インスタンス群からはDBにアクセス可能とする」といった柔軟な設定ができるようになります。

 

7. セキュリティグループが編集されました。ポート範囲に「3306」が指定されていることにも注目しましょう。これでEC2インスタンスのMySQLクライアントから接続できる状態となりました。

8. 下記のコマンドで再度データベースにアクセスします。

mysql -u (ユーザー名) -h (ホスト名) -p

今回は正しく接続ができ、下のような画面が表示されます。「quit;」を入力し、Enterキーを押して、データベースからログアウトしておきましょう。

ポイント

quit;」はMySQLクライアントを終了するコマンドになります。