1. maca12vel

    Posted

    maca12vel
Changes in title
+本番環境でデータベースを作成する
Changes in tags
Changes in body
Source | HTML | Preview
@@ -0,0 +1,119 @@
+##はじめに
+こちらの記事は「AWSのサーバーを利用する」ための記事2つ目です。
+1つ目の記事を読まれていない場合は [こちら](https://qiita.com/maca12vel/items/902dde37a267ceca1c53)
+からお願いいたします。
+
+##データベースの用意
+データベースには以下のような種類がる。
+
+・階層型データベース
+・ネットワーク型データベース
+・リレーショナルデータベース
+
+この中でもっとも利用されているのが``「リレーショナルデータベース」``
+エクセルの表のような形で情報を整理し、管理できる。
+そして、このリレーショナルデータベースを管理するソフトウェアは
+**リレーショナル・データ・ベース・マネジメント・システム(RDBMS)**と呼ばれる。
+
+そんなRDBMSの中でも代表的なものの1つが``MySQL``
+そして、MySQLから派生した``MariaDB``というデータベースもある。
+
+「MariaDB」とは、MySQLの派生として開発されているオープンソースソフトウェア。
+MySQLとの互換性があります。Amazon Linux 2ではMariaDBを使用することになっている。
+
+※基本的にMariaDBとMySQLは同様のものと考えて差し支えないです。
+
+
+
+##MariaDBをインストール
+Amazon Linux 2を利用している場合、MariaDBは 「yumコマンド」からインストールできる。
+
+ターミナル(EC2内)で以下のコマンドを実行
+
+```
+[ec2-user@ip-***-**-**-*** ~]$ sudo yum -y install mysql56-server mysql56-devel mysql56 mariadb-server mysql-devel
+```
+
+##データベースを起動
+データベースを起動するために「systemctlコマンド」を利用します。
+
+ターミナル(EC2内)で以下のコマンドを実行
+
+```
+[ec2-user@ip-***-**-**-*** ~]$ sudo systemctl start mariadb
+```
+
+起動できたか確認するために、以下のコマンドを実行
+
+```
+[ec2-user@ip-***-**-**-*** ~]$ sudo systemctl status mariadb
+
+● mariadb.service - MariaDB database server
+ Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
+ Active: active (running) since 土 2020-02-29 07:00:11 UTC; 7s ago
+ Process: 5993 ExecStartPost=/usr/libexec/mariadb-wait-ready $MAINPID (code=exited, status=0/SUCCESS)
+ Process: 5957 ExecStartPre=/usr/libexec/mariadb-prepare-db-dir %n (code=exited, status=0/SUCCESS)
+```
+
+「active (running) 」と緑色の表示がされれば、データベースの起動は成功
+
+##データベースのrootパスワードの設定
+yumでインストールしたMariaDBには、デフォルトで「root」というユーザーで
+アクセスできるようになっていますがパスワードは設定されていません。
+パスワードを設定する必要があります。
+
+※ 0から始まるpasswordは読み込んでくれないケースが多いので避ける
+
+ターミナル(EC2内)で以下のコマンドを実行
+
+```
+[ec2-user@ip-***-**-**-*** ~]$ 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-***-**-**-*** ~]$ mysql -u root -p
+```
+
+「Enter password:」とパスワードを入力するように表示されるので、
+さきほど設定したパスワードを入力して、Enterキーを押す。
+以下のように表示されれば、データベースの設定は終了。
+
+```
+Welcome to the MariaDB monitor. Commands end with ; or \g.
+Your MariaDB connection id is 142
+Server version: 5.5.64-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)]>
+```
+
+「exit」と入力すれば終了できる。
+
+---
+
+以上です。お疲れ様でした。
+
+