AWSはクラウドコンピューティングサービスの一つで、クラウド上にネットワークを構築してホームページやシステムを公開できます。前回は、EC2にデータベース環境を構築しました。

データベースの構築後は、Webアプリで活用するためにもテーブルの作成などの準備をしなければなりません。しかし、データベースを扱うためには、SQLの操作を理解しておく必要があります。

そこで今回は、EC2に構築したデータベースの操作手順を解説します。

SQLとは

SQLとは、「Structured Query Language」の略で、日本語に訳すと「構造化問い合わせ言語」という意味を持ちます。

SQLはプログラミング言語ではなく、リレーショナルデータベースの操作をするために必要な言語です。リレーショナルデータベースとは、事前に定義されたテーブル間に関係性を持たせた集合体のことです。リレーショナルデータベースとしては、前回構築をした「MySQL」「PostgreSQL」などが有名でしょう。

SQLを使うことで、データベース内にテーブルを作成したり、新たなデータを追加したり、データの取り出しが可能となります。Webアプリを作成するうえでは、データベースの構築が必須です。そのため、SQLも同時に身につけておかねばならないでしょう。

EC2に構築したMySQLの基本操作

まずは、EC2にアクセスしてMySQLに接続しなければなりません。手順としては、以下の流れで進めていきます。

  1. EC2インスタンスにSSHログイン
  2. MySQLに接続
  3. データベース作成
  4. テーブル作成
  5. データ挿入・更新・検索・削除

1. EC2インスタンスにSSHログイン

データベースにアクセスするためには、事前にデータベースをインストールしたEC2にSSHログインをする必要があります。

SSHログインの方法については、下記記事で解説しているので参考に実施してみてください。

2. MySQLに接続

2.1 MySQLのサービスを起動

$sudo service mysqld start

2.2 MySQLのrootユーザーでログイン

$mysql -u root

rootユーザーでログインすると、コンソール画面が以下の表示になります。

mysql>

3. データベース作成

3.1 データベースの作成
まずは、各テーブルを格納するために必要な基盤となるデータベースの作成をおこないます。データベースを作成する場合には、以下のコマンドを実行します。

mysql> CREATE DATABASE tcd_db;
Query OK, 1 row affected (0.00 sec)

3.2 データベースの確認
続いて、先ほど作成したデータベースの確認をおこないます。

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
| tcd_db            |
+--------------------+
5 rows in set (0.00 sec)

3.3 データベースの指定
データベースに操作を加えるときには、あらかじめ指定をする必要があります。

mysql> USE tcd_db;
Database changed

4. テーブル作成

4.1 テーブルの作成
データを格納するためのテーブルを作成します。以下のSQLでは、会員情報を格納するテーブルを作りたいため、idをint型、nameをvarchar型の指定です。

mysql> CREATE TABLE users (id int, name varchar(255));
Query OK, 0 rows affected (0.02 sec)

4.2 テーブルの確認
先ほど作成したテーブルを確認するときは、「SHOW TABLES」のコマンドを利用します。

mysql> SHOW TABLES;
+-------------------+
| Tables_in_tcd_db  |
+-------------------+
| users             |
+-------------------+
1 row in set (0.00 sec)

4.3 テーブルの構造確認
テーブルの項目などを確認するときは、「DESC」コマンドで確認できます。

mysql> DESC users;
+-------+--------------+------+-----+---------+-------+
| Field | Type         | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| id    | int(11)      | YES  |     | NULL    |       |
| name  | varchar(255) | YES  |     | NULL    |       |
+-------+--------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

5. データ挿入・更新・検索・削除

5.1 データ挿入
データの挿入時には、「INSERT INTO」コマンドを使います。

mysql> INSERT INTO users (id, name) VALUES (1 ,'test');
Query OK, 1 row affected (0.01 sec)

5.2 データ更新
データの更新時には、「UPDATE」コマンドを使います。

mysql> UPDATE users SET id = 2, name = 'test2' WHERE name = 'test';
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

5.3 データ検索
データの検索時には、「SELECT」コマンドを使います。また、特定のレコードのみを取得するときには、「WHERE」句の指定が必要です。

mysql> SELECT * FROM users WHERE name = 'test2';
+------+-----------+
| id   | name      |
+------+-----------+
|    2 | test2     |
+------+-----------+
1 row in set (0.00 sec)

5.4 データ削除
データの削除時には、「DELETE」コマンドを使います。

mysql> DELETE FROM users WHERE id = 2;
Query OK, 1 row affected (0.00 sec)

まとめ

今回は、EC2に構築したMySQLの基本操作を解説しました。データベースの環境を構築後は、アプリケーションと組み合わせることでWebシステムとして利用可能となります。

SQLは、今回ご紹介した以外にもさまざまなコマンドがあるため、気になった方は是非色々と調べてみましょう!