2021/02/09
「はじめての VPS シリーズ」の第10回目です。
前回は CentOS7 に PHP7.4 をインストールしました。
今回は CentOS7 にデータベースをインストールします。
(※データベースは MariaDB ではなく MySQL5.7 をインストールします。)
事前知識
CentOS7 は他の Linux ディストリビューションに倣って MySQL を MariaDB に置き換えました。
そのため、標準リポジトリから MySQL(MySQL Community Server)をインストールすることはできません。
Yum でインストールするには事前に公式リポジトリ(MySQL Yum Repository)を別途インストールする必要があります。
MariaDB は MySQL から派生したデータベースです。MySQL がオラクルに買収されてから、MariaDB のプロジェクトがスタートしました。
その背景には、オラクルが「自社の利益の大きい主力製品を守るために競合であるMySQLを潰すのではないか」という恐れがあったためと言われています。
新しいLinuxの教科書
ただ、読むだけではなく実践しながら進める形式になっています。(※コマンド一覧とか早引きの本ではありません)初心者がつまずくであろう箇所は補足説明がしっかり入っています。基本を大事にしている本なので、書いてあることはとてもわかりやすいです。それゆえ、中級者以上の方には物足りないかもしれませんが、初学者にはススメします!
手順
MySQL の yumリポジトリをインストール
CentOS7 からは標準リポジトリで MySQL が提供されなくなりました。
代わりに MySQL と互換性のある MariaDB が提供されるようになりました。
MySQL は、MySQL 公式の yum リポジトリを利用することでインストールできます。
[root@example ~]#yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
ローカルにあるRPMパッケージも yum を使って依存性を解決しながら、インストールできます。
[root@example ~]#yum localinstall RPMファイルパス
インストールするかどうか聞かれるので 「y」 を押してインストールを実行させます。
MySQL Community Server の確認
MySQL の公式リポジトリを追加すると mysql-community-server という名前のパッケージを検索することができます。
# インストールされているパッケージの情報を表示する
[root@example ~]# yum info mysql-community-server
MySQLのインストール
mysql-community-server パッケージをインストールします。
# MySQL のインストール
[root@example ~]#yum install -y mysql-community-server
MySQLの確認
ちゃんとインストールされたか確認します。
[root@example ~]#mysqld --version
MySQLの起動
# マシンを起動した際に自動的に MySQL Server が起動するように設定
[root@example ~]# systemctl enable mysqld
# MySQL Server を起動
[root@example ~]# systemctl start mysqld
MySQLの初期パスワード確認
MySQL5.7では、初回起動時に初期パスワードが生成されます。
パスワードはログファイルに記述されているので、それを確認します。
# パスワードの確認
[root@example ~]# cat /var/log/mysqld.log | grep root
# ログインしてみる
[root@example ~]# mysql -u root -p
初期設定
まずは MySQL サーバーのデータベースで利用する文字コードを UTF-8 に指定します。
次に default_password_lifetime の値を 0 に変更して、この有効期限の設定を無効にします。
自分の場合は有効期限の設定を 0 に設定して無効にしますが、パスワードを定期的に変更した方がよいと思う方はここはスキップしてください。
※MySQL5.7.11 で default_password_lifetime のデフォルトは 0 に変更になりました。
# 設定ファイルを開く
[root@example ~]# vim /etc/my.cnf
# my.cnf
[mysqld]
:
character-set-server = utf8
default_password_lifetime = 0
# 設定を変更したら再起動
[root@example ~]# systemctl restart mysqld
この後は、一般ユーザーのアカウントを作成して、Laravel の ENVファイルに記述する流れになります。
以上です。
さくらのVPS
Linuxの知識がある方や初心者の枠から脱した人は「VPS」をおススメします!もし、あなたがデザイナーで静的ページのサイトしか作らないのであれば「レンタルサーバー」でOKです。ただ、Webプログラマーとして仕事をするのであればroot権限のあるVPSサーバーを最低1台、自分専用(学習用)を持っておいたほうがいいでしょう。
Laravelプログラマーの初心者が選ぶ学習用サーバーとは?
仕事で Laravel を使っています。気づいたことや新しい発見など情報を発信していきます。問い合わせはこちら。