AWSでMariaDBを使用してみよう!
AWSでMariaDBを使用する方法は2つあります。
1つ目は、Amazon RDSと呼ばれるクラウド型データベースの中でMariaDBを使用する方法です。本サービスを使用することで、簡単にAWS内でMariaDBを使用することができます。
2つ目は、AWSが提供する仮想サーバ・Amazon EC2の中でMariaDBを使用する方法です。EC2内にMariaDBをインストールすることで、仮想サーバ内にデプロイするシステムのデータベースとしてMariaDBを使用できます。
本記事では、AWSのAmazon RDSとAmazon EC2、双方におけるMariaDBの使用方法について紹介します。
MariaDBとは?
MariaDBとはMySQLから派生したオープンソースのRDBMSです。
MariaDBは、MySQLのオリジナルコードの作者でもあるMichael “Monty” Widenius氏によって開始されたMariaDBのプロジェクトによって作成されました。
MariaDBはMySQLと互換性があり、MySQLと同様のSQLコマンドを使用することができます。
RDBMSとは?
RDBMSとはRelational DataBase Management Systemの略で、リレーショナルデータベース管理システムのことを意味します。
リレーショナルデータベースとは、データの集合体を関連する項目別のテーブルに分け、複数のテーブル同士を関連付けて運用するデータベースです。
フリーマーケットのアプリケーションのデータベースを例に考えます。
ユーザに関する情報であればユーザのテーブルに、商品に関する情報であれば商品のテーブルにデータを保存します。
ユーザと商品の間には「ユーザは何度でも商品を出品できる」、「商品は1人のユーザによって出品される」などの関係性があり、これらを基にテーブル同士を関連付けます。
それぞれのテーブルは行と列で構成されたマトリックス表のような構成をしています。
テーブルの列に保存された値をレコードと呼びます。
Amazon RDS
Amazon RDSはAmazon Relational Database Serviceの略で、AWSが提供するクラウド型のリレーショナル・データベースを提供するサービスです。
使用できるソフトウェアはAmazon Aurora、PostgreSQL、MySQL、MariaDB、Oracle、Microsoft SQL Serverの6種類です。
このサービスはクラウド型のサービスであり、それぞれのソフトウェアは予めセットアップされた状態となっています。
Amazon RDSとMariaDB
Amazon RDSの中でMariaDBを選択すると、簡単にAWSでMariaDBを使用できます。
1つの画面で必要事項を選択し、「データベースの作成」ボタンをクリックするのみでMariaDBの初期設定が完了となります。
Amazon EC2
Amazon EC2はAmazon Elastic Compute Cloudの略で、AWSの中で使用できる仮想サーバのことを指しています。
Amazon Linux 2、macOS、Red Hat Enterprise Linux 8やMicrosoft Windows Serverなど様々なオペレーティングシステム(OS)を使用することができます。
Amazon EC2とMariaDB
Amazon EC2で構築した仮想サーバの中にMariaDBをインストールすることができます。
例として、Amazon Linux2にMariaDBをインストールする方法を紹介します。
①:SSHでEC2インスタンスにアクセス
Windowsの場合はPuTTY等のSSHを使用できるツールを用いてください。
Macの場合は以下のコマンドをターミナルに入力します。
xxxxには用意したpemキーのファイル名を、yyにはElastic IPアドレスを入力します。
% ssh -i xxxx.pem ec2-user@yy.yy.yy.yy
②:MariaDBをインストールする
EC2インスタンスのコンソール上で以下のコマンドを入力します。
$ sudo yum install -y mariadb-server
③:MariaDBを起動する
MariaDBは自動起動しないため、以下のコマンドで起動させます。
$ sudo systemctl start mariadb
④:起動していることを確認する
以下のコマンドでMariaDBが正常に起動していることを確認します。
$ sudo systemctl status mariadb
ここで、次のようにActiveの部分がrunningになっていれば起動成功です。
● mariadb.service - MariaDB database server Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled) Active: active (running) ← こちらです since 木 2021-03-11 12:00:08 UTC; 1min 8s ago Process: 3651 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS) Process: 3568 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS) Main PID: 3650 (mysqld_safe) CGroup: /system.slice/mariadb.service ├─3650 /bin/sh /usr/bin/mysqld_safe --basedir=/usr └─3816 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-error=/var/log/mari...
⑤:MariaDBが自動で起動するように設定する
MariaDBはインストールして起動した時点では自動で起動しません。一度EC2インスタンスを再起動すると停止してしまいます。
そのため、以下のコマンドを用いて自動起動するように設定できます。
$ sudo systemctl enable mariadb
⑥:初期設定を行う
ここからはMariaDBの初期設定を行います。
以下のコマンドを入力します。
$ mysql_secure_installation
以下の文字が表示されたら、何も入力せずにエンターキーを押します。
Enter current password for root (enter for none):
次に、rootパスワードを設定するか聞かれます。
ここではYと入力し、エンターキーを押します。
Set root password? [Y/n]
指示に従い、任意のrootパスワードを入力します。
キーボードを叩いても何も表示されず、一見入力されていないように見えます。しかし、裏で認識されていますのでご安心ください。
New password:
もう一度入力するよう指示がありますので、パスワードを再入力します。
Re-enter new password:
正しくパスワードを入力すると、以下のように「匿名ユーザを除去しますか?」と質問されます。Yと入力し、エンターキーを押します。
Remove anonymous users? [Y/n]
続いて、「リモートからのrootログインを禁止しますか?」と質問されます。こちらもYと入力し、エンターキーを押します。
Disallow root login remotely? [Y/n]
次は「テストデータベースとそのデータベースへのアクセスを削除しますか?」と質問されます。こちらもYと入力し、エンターキーを押します。
Remove test database and access to it? [Y/n]
更に「今すぐ特権テーブルを再読み込みしますか?」と質問されます。こちらもYと入力し、エンターキーを押します。
Reload privilege tables now? [Y/n]
以下のように表示されればMariaDBの初期設定は完了です。
All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
⑦:MariaDBにアクセスできることを確認する
最後に、以下のコマンドを入力してMariaDBにアクセスできることを確認します。
$ mysql -u root -p
以下のように表示されたら、先程設定したrootパスワードを入力します。
Enter password:
以下のように表示されたら、MariaDBを使用することができます。
Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 10 Server version: 5.5.68-MariaDB MariaDB Server Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]>
以上でAmazon Linunx 2へのMariaDBのインストールと初期設定は完了です。
MariaDBはAWSで簡単に使用できる
MariaDBはMySQLと互換性があり、多くの企業のシステムで採用されています。AWSでは、Amazon RDSを使用することで簡単にMariaDBを使用することができます。
また、Amazon EC2においても仮想サーバの中にMariaDBをインストールし、作成したアプリケーションと紐付けて使用することが可能です。
是非、AWSのAmazon RDSやEC2においてMariaDBを使用してみましょう。
この記事の監修者・著者

-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞