CentOS 7 MySQL5.7 インストールと設定方法(CentOS 7.5)
CentOS 7にMySQL5.7をインストールします。
MySQLインストール
yumリポジトリの追加
CentOS 7にyumリポジトリを追加します。
ルートにログインし、yumリポジトリが格納されているディレクトリへ移動します。
# cd /etc/yum.repos.d |
現在のリポジトリを確認します。
# ll 合計 72 -rw-r–r–. 1 root root 1664 5月 17 22:53 CentOS-Base.repo -rw-r–r–. 1 root root 1309 5月 17 22:53 CentOS-CR.repo -rw-r–r–. 1 root root 649 5月 17 22:53 CentOS-Debuginfo.repo -rw-r–r–. 1 root root 630 5月 17 22:53 CentOS-Media.repo -rw-r–r–. 1 root root 1331 5月 17 22:53 CentOS-Sources.repo -rw-r–r–. 1 root root 4768 5月 17 22:53 CentOS-Vault.repo -rw-r–r–. 1 root root 314 5月 17 22:53 CentOS-fasttrack.repo -rw-r–r– 1 root root 0 10月 3 2017 epel-testing.repo -rw-r–r– 1 root root 0 10月 3 2017 epel.repo -rw-r–r– 1 root root 446 6月 19 17:28 remi-glpi91.repo -rw-r–r– 1 root root 446 6月 19 17:28 remi-glpi92.repo -rw-r–r– 1 root root 446 6月 19 17:28 remi-glpi93.repo -rw-r–r– 1 root root 456 6月 19 17:28 remi-php54.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php70.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php71.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php72.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php73.repo -rw-r–r– 1 root root 750 6月 19 17:28 remi-safe.repo -rw-r–r– 1 root root 2605 6月 19 17:28 remi.repo |
MySQLの公式サイトから MySQL5.7のCentOS 7用yumリポジトリのダウンロードします。
# rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm |
リポジトリが追加されたかを再度確認します。
# ll 合計 80 -rw-r–r–. 1 root root 1664 5月 17 22:53 CentOS-Base.repo -rw-r–r–. 1 root root 1309 5月 17 22:53 CentOS-CR.repo -rw-r–r–. 1 root root 649 5月 17 22:53 CentOS-Debuginfo.repo -rw-r–r–. 1 root root 630 5月 17 22:53 CentOS-Media.repo -rw-r–r–. 1 root root 1331 5月 17 22:53 CentOS-Sources.repo -rw-r–r–. 1 root root 4768 5月 17 22:53 CentOS-Vault.repo -rw-r–r–. 1 root root 314 5月 17 22:53 CentOS-fasttrack.repo -rw-r–r– 1 root root 0 10月 3 2017 epel-testing.repo -rw-r–r– 1 root root 0 10月 3 2017 epel.repo -rw-r–r– 1 root root 1036 10月 16 2015 mysql-community-source.repo -rw-r–r– 1 root root 1033 10月 16 2015 mysql-community.repo -rw-r–r– 1 root root 446 6月 19 17:28 remi-glpi91.repo -rw-r–r– 1 root root 446 6月 19 17:28 remi-glpi92.repo -rw-r–r– 1 root root 446 6月 19 17:28 remi-glpi93.repo -rw-r–r– 1 root root 456 6月 19 17:28 remi-php54.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php70.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php71.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php72.repo -rw-r–r– 1 root root 1314 6月 19 17:28 remi-php73.repo -rw-r–r– 1 root root 750 6月 19 17:28 remi-safe.repo -rw-r–r– 1 root root 2605 6月 19 17:28 remi.repo |
「mysql-」で始まるファイルが2つ追加されているのが確認できればリポジトリの追加はOKです。
MySQLのインストール
MySQLをインストールします。
# yum install mysql-community-server |
MySQLのバージョンを確認
MySQLのバージョンを確認します。
# mysql –version mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper |
MySQL5.7がインストールされているのが確認出来ました。
インストールしたパッケージが指定したバージョンであるかを確認します。
# rpm -qa | grep mysql
# rpm -qa | grep mysql mysql-community-server-5.7.22-1.el7.x86_64 php-mysqlnd-7.1.19-1.el7.remi.x86_64 mysql57-community-release-el7-7.noarch mysql-community-libs-5.7.22-1.el7.x86_64 mysql-community-common-5.7.22-1.el7.x86_64 mysql-community-libs-compat-5.7.22-1.el7.x86_64 mysql-community-client-5.7.22-1.el7.x86_64 |
MySQL5.7のインストールが完了しました。
MySQLの起動
MySQLを起動します。
# systemctl start mysqld |
起動確認します。
# systemctl status mysqld ● mysqld.service – MySQL Server Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled) Active: active (running) since 水 2018-06-27 13:24:35 JST; 8h ago Docs: man:mysqld(8) http://dev.mysql.com/doc/refman/en/using-systemd.html Main PID: 1712 (mysqld) Tasks: 27 CGroup: /system.slice/mysqld.service └─1712 /usr/sbin/mysqld –daemonize –pid-file=/var/run/mysqld/mysqld.pid6月 27 13:24:08 localhost.localdomain systemd[1]: Starting MySQL Server… 6月 27 13:24:35 localhost.localdomain systemd[1]: Started MySQL Server. |
MySQLの自動起動設定
MySQLの自動起動の設定をします。
# systemctl enable mysqld |
自動起動設定の確認します。
# systemctl is-enabled mysqld enabled |
「enabled」になっていれば、設定は完了です。
MySQLの初期設定
インストール直後は、ランダムな root パスワードが設定されています。
パスワードはログで確認できるので次のコマンドでlogを見てみます。
# grep 'temporary password’ /var/log/mysqld.log 2018-06-20T10:54:28.112789Z 1 [Note] A temporary password is generated for root@localhost: lfseasjg)3Xgx |
root@localhost: の後に表示されているのが、設定されているrootパスワードになります。
次に、rootパスワードを変更するのですが、MySQLのパスワードにはパスワードポリシーというものがありパスワードの文字数、大文字小文字などルールが決められています。
デフォルトでは、英数字、大文字、記号(英数字以外)を含む8文字以上のパスワードとなっています。
パスワードポリシーは後ほど変更可能です。
MySQLの root パスワードの設定とその他の初期処理を行います。
# mysql_secure_installation |
- rootのパスワード -> logで表示されたパスワードを入力してENTER
- rootのパスワード入力(2回)(英数字、大文字、記号(英数字以外)含む8文字以上のパスワード)
- rootのパスワードを再設定するか -> そのままEnter (再設定しない)
- 匿名ユーザを削除するか -> y と入力してEnter
- リモートからのrootログインを禁止するか -> y と入力してEnter
- テスト用の’test’データベースを削除するか -> y と入力してEnter
- 設定をリロードして反映するか -> Y と入力してEnter
MySQLにログイン
MySQLにログインします。
パスワードを入力してログインします。
# mysql -u root -p |
以下のようになれば、ログイン成功です。
mysql> |
ここからは、パスワードポリシーを変更したい場合の設定です。
(パスワードポリシー変更次第ではセキュリティが弱くなることがあるので変更は自己責任でお願いします。)
パスワードポリシーの変更
パスワードポリシーを変更します。
MySQLにログインします。
現在のパスワードポリシーを確認します。
mysql> show variables like 'validate_password%’; |
現状は以下のように設定されています。
- パスワードの文字数 8以上
- 大文字小文字 各1文字ずつ含む
- 数字 1文字含む
- パスワードポリシー MIDIUM
- 特殊文字 1文字含む
「validate_password_policy」に関しての詳細は以下のようになっています。
- LOW 長さ
- MIDIUM 長さ; 数字、小文字/大文字、および特殊文字
- STRONG 長さ; 数字、小文字/大文字、および特殊文字。辞書ファイル
今回は、パスワードポリシーを「LOW」、文字数を「5文字」に設定します。
mysql> set global validate_password_policy=LOW; Query OK, 0 rows affected (0.00 sec) |
mysql> set global validate_password_length=5; Query OK, 0 rows affected (0.00 sec) |
再度、パスワードポリシーを確認します。
mysql> show variables like 'validate_password%’; |
※パスワードポリシーが「LOW」なのでパスワードの長さ(password_length)だけが有効になります。
設定変更が確認出来たら完了です。
パスワード再設定
パスワードを再設定します。
mysql> set password for root@localhost=password('任意のパスワード’);
mysql> set password for root@localhost=password('abcde’); |
パスワードが「abcde」に変更されました。
以上で、MySQL5.7のインストールと設定は完了です。