1:本番環境でデータベースを作成
データベースの種類を確認します。
データベースには以下のような種類があります。
①階層型データベース
②ネットワーク型データベース
③リレーショナルデータベース
この中でもっとも利用されているのが「リレーショナルデータベース」です。
エクセルの表のような形で情報を整理し、管理できます。そして、このリレーショナルデータベースを管理するソフトウェアは「リレーショナル・データ・ベース・マネジメント・システム(RDBMS)」と呼ばれます。
そんなRDBMSの中でも代表的なものの1つが「MySQL」です。
MySQLマイエスキューエル
「MySQL」とは、Oracle社が開発・提供をしているRDBMSです。データベースの作成、編集、削除などを行うことができます。オープンソースソフトウェアとして公開されており、誰でも無償で利用できます。
Ruby on Railsと合わせ利用することができ、本カリキュラムでは一貫してMySQLを利用しています。
MySQL公式ページ:https://www.mysql.com/
そして、MySQLから派生した「MariaDB」というデータベースがあります。
MariaDBマリアディービー
「MariaDB」とは、MySQLの派生として開発されているオープンソースソフトウェアです。MySQLとの互換性があります。
2:MariaDBを起動
①MariaDBをインストールします。
Amazon Linux 2を利用している場合、MariaDBは 「yumコマンド」からインストールできます。
以下のコマンドを実行していきます。
ターミナル(EC2内で実行)
[ec2-user@ip-172-31-25-189 ~]$ sudo yum -y install mariadb-server mysql-devel
→sudo yum -y install mariadb-server mysql-develコマンドを実行します。
②データベースを起動します。
データベースを起動するために「systemctlコマンド」を利用します。
systemctlシステムコントロールコマンド
systemctlコマンドは、Amazon LinuxやCentOSに含まれているもので、インストールしたソフトウェアの起動を一括して行えるツールです。
ターミナル(EC2内で実行)
[ec2-user@ip-172-31-25-189 ~]$ sudo systemctl start mariadb
→sudo systemctl start mariadbコマンドを実行します。
起動できたか確認するために、以下のコマンドを打ってみます。
ターミナル(EC2内で実行)
[ec2-user@ip-172-31-25-189 ~]$ sudo systemctl status mariadb
→sudo systemctl status mariadbコマンドを実行します。
「active (running) 」と緑色の表示がされれば、データベースの起動は成功です。
3:データベースのrootパスワードの設定
yumでインストールしたMariaDBには、デフォルトで「root」というユーザーでアクセスできるようになっていますが、パスワードは設定されていません。なので、パスワードを設定する必要があります。
パスワードは自身で決めることができます。ご自身が覚えやすいパスワードを設定します。
「0」、または「!」から始まるpasswordは読み込んでくれないケースが多いので避けます。(例:「0001password」、「!password」など)
設定したパスワードはこの先にある作業でも扱うので、メモアプリなどに控えておきます。
それでは、以下のコマンドを実行していきます。
ターミナル(EC2内で実行)
[ec2-user@ip-172-31-25-189 ~]$ sudo /usr/bin/mysql_secure_installation
→sudo /usr/bin/mysql_secure_installationコマンドを実行します。
その後、以下のステップで実行します。
手順 やること
① Enter current password for root (enter for none): 」と表示されたらEnterキーを押す
② 「Set root password? [Y/n]」と表示されたら「Y」を入力してEnterキーを押す
③ 「New password:」と表示されたら自身で決めたパスワードを入力(※とくに画面には何も表示されませんが入力できています)
④ 「Re-enter new password:」と表示されたら、同じパスワードを入力(とくに画面には何も表示されませんが入力できています)
ここで「... Success!」と表示されればパスワードの設定は完了です。しかしながら、続けて細かい設定について答える必要があります。
手順 やること
① 「Remove anonymous users? [Y/n]」と表示されたら「Y」を入力してEnterキーを押す
② 「Disallow root login remotely? [Y/n]」と表示されたら「Y」を入力してEnterキーを押す
③ 「Remove test database and access to it? [Y/n]」と表示されたら「Y」を入力してEnterキーを押す
④ 「Reload privilege tables now? [Y/n]」と表示されたら「Y」を入力してEnterキーを押す
プロンプトが表示されたら設定は完了です。
データベースへの接続を確認しましょう
さきほど設定したパスワードが使えるか確認してみます。以下のコマンドを入力してください。
ターミナル(EC2内で実行)
[ec2-user@ip-172-31-25-189 ~]$ mysql -u root -p
→mysql -u root -pコマンドを実行します。
「Enter password:」とパスワードを入力するように表示されるので、さきほど設定したパスワードを入力して、Enterキーを押してください。以下のように表示されれば、データベースの設定は終了です。