CentOS 6  MySQLインストールと設定方法(CentOS 6.9)

2018年6月20日CentOS 6, Linux

CentOS 6にMySQL5.7をインストールします。

MySQLインストール

yumリポジトリの追加

CentOS 6にyumリポジトリを追加します。
ルートにログインし、yumリポジトリが格納されているディレクトリへ移動します。

# cd /etc/yum.repos.d

現在のリポジトリを確認します。

# ll
合計 68
-rw-r–r–. 1 root root  1664  5月  17  22:53  2017  CentOS-Base.repo
-rw-r–r–. 1 root root   649   5月  28  22:53  2017  CentOS-Debuginfo.repo
-rw-r–r–. 1 root root   630   5月  28  22:53  2017  CentOS-Media.repo
-rw-r–r–. 1 root root 4768   5月  28  22:53  2017  CentOS-Vault.repo
-rw-r–r–. 1 root root   314   5月  28  22:53 2017  CentOS-fasttrack.repo
-rw-r–r– 1 root root  1056 10月    5  15:17  2017  epel-testing.repo
-rw-r–r– 1 root root   957  10月    5  15:17  2018  epel.repo
-rw-r–r– 1 root root   446   6月     5  17:28  2018  remi-glpi91.repo
-rw-r–r– 1 root root   446   6月     5  17:28  2018  remi-glpi92.repo
-rw-r–r– 1 root root   446   6月     5  17:28  2018  remi-glpi93.repo
-rw-r–r– 1 root root   456   6月     5  17:28  2018  remi-php54.repo
-rw-r–r– 1 root root 1314   6月     5  17:28  2018  remi-php70.repo
-rw-r–r– 1 root root 1314   6月     5  17:28  2018  remi-php71.repo
-rw-r–r– 1 root root 1314   6月     5  17:28  2018  remi-php72.repo
-rw-r–r– 1 root root   750   6月     5  17:28  2018  remi-safe.repo
-rw-r–r– 1 root root 2605   6月     5  17:28  2018  remi.repo

MySQLの公式サイトから MySQL5.7のCentOS 6用yumリポジトリのダウンロードします。

# rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm

※yumリポジトリのダウンロードURLは、MySQL公式サイトより最新情報を取得して下さい。

  1. MySQL公式サイトにアクセス
  2. ページ下部に、OS毎のyumリポジトリの一覧があるので、「Red Hat Enterprise Linux 6 / Oracle Linux 6 (Architecture Independent), RPM Package」のDownloadボタンをクリック
  3. 「No thanks, just start my download.」のリンク上で、右クリックして「リンクのアドレスをコピー(E)」を選択

リポジトリが追加されたかを再度確認します

# ll
合計 68
-rw-r–r–. 1 root root  1664  5月  17  22:53  2017  CentOS-Base.repo
-rw-r–r–. 1 root root   649   5月  28  22:53  2017  CentOS-Debuginfo.repo
-rw-r–r–. 1 root root   630   5月  28  22:53  2017  CentOS-Media.repo
-rw-r–r–. 1 root root 4768   5月  28  22:53  2017  CentOS-Vault.repo
-rw-r–r–. 1 root root   314   5月  28  22:53 2017  CentOS-fasttrack.repo
-rw-r–r– 1 root root  1056 10月    5  15:17  2017  epel-testing.repo
-rw-r–r– 1 root root   957  10月    5  15:17  2018  epel.repo
-rw-r–r– 1 root root 1036 10月    16 18:10  2015 mysql-community-source.repo

-rw-r–r– 1 root root 1033 10月    16 18:10  2015 mysql-community.repo
-rw-r–r– 1 root root   446   6月     5  17:28  2018  remi-glpi91.repo
-rw-r–r– 1 root root   446   6月     5  17:28  2018  remi-glpi92.repo
-rw-r–r– 1 root root   446   6月     5  17:28  2018  remi-glpi93.repo
-rw-r–r– 1 root root   456   6月     5  17:28  2018  remi-php54.repo
-rw-r–r– 1 root root 1314   6月     5  17:28  2018  remi-php70.repo
-rw-r–r– 1 root root 1314   6月     5  17:28  2018  remi-php71.repo
-rw-r–r– 1 root root 1314   6月     5  17:28  2018  remi-php72.repo
-rw-r–r– 1 root root   750   6月     5  17:28  2018  remi-safe.repo
-rw-r–r– 1 root root 2605   6月     5  17:28  2018  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
mysql-community-common-5.7.22-1.el6.x86_64
mysql-community-server-5.7.22-1.el6.x86_64
php-mysqlnd-7.1.18-1.el6.remi.x86_64
mysql57-community-release-el6-11.noarch
mysql-community-client-5.7.22-1.el6.x86_64
mysql-community-libs-5.7.22-1.el6.x86_64
mysql-community-libs-compat-5.7.22-1.el6.x86_64

MySQL5.7のインストールが完了しました。

 

MySQLの起動

MySQLを起動します

# service mysqld status

 

MySQLの自動起動設定

MySQLの自動起動の設定をします。

# chkconfig mysqld on

設定の確認をします。

# chkconfig –list mysqld
mysqld             0 : off     1 : off     2 : on     3 : on     4 : on    5 : on     6 : off

2~5が「on」になっていれば、設定は完了です。

 

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: lfseasjg3X)x

root@localhost: の後に表示されているのが、設定されているrootパスワードになります。

次に、rootパスワードを変更するのですが、MySQLのパスワードにはパスワードポリシーというものがありパスワードの文字数、大文字小文字などルールが決められています。
デフォルトでは、英数字、大文字、記号(英数字以外)を含む8文字以上のパスワードとなっています。
パスワードポリシーは後ほど変更可能です。

MySQLの root パスワードの設定とその他の初期処理を行います。

# mysql_secure_installation


上記、質問は次の順で質問されます。

  1. rootのパスワード  ->  logで表示されたパスワードを入力してENTER
  2. rootのパスワードを設定するか  ->  yと入力してEnter
  3. rootのパスワード入力(2回)(英数字、大文字、記号(英数字以外)含む8文字以上のパスワード)
  4. このパスワードで確定して次に進んでいいか  ->  yと入力してEnter
  5. 匿名ユーザを削除するか  ->  y と入力してEnter
  6. リモートからのrootログインを禁止するか  ->  y と入力してEnter
  7. テスト用の’test’データベースを削除するか  ->  y と入力してEnter
  8. 設定をリロードして反映するか  ->  Y と入力してEnter

MySQLにログイン

MySQLにログインします。

パスワードを入力してログインします。

# mysql -u root -p

以下のようになれば、ログイン成功です。

mysql>    

ここからは、パスワードポリシーを変更したい場合の設定です。
(パスワードポリシー変更次第ではセキュリティが弱くなることがあるので変更は自己責任でお願いします。)

 

パスワードポリシーの変更

パスワードポリシーを変更します。
MySQLにログインします。
現在のパスワードポリシーを確認します。

mysql> show variables like 'validate_password%’;
+————————————————–+———–+
| Variable_name                                            |  Value      |
+————————————————–+———–+
| validate_password_check_user_name           |  OFF        |
| validate_password_dictionary_file                 |                |
| validate_password_length                            |  8            |
| validate_password_mixed_case_count          |  1            |
| validate_password_number_count                |  1            |
| validate_password_policy                            |  MEDIUM  |
| validate_password_special_char_count         |  1            |
+————————————————-+————+
7 rows in set (0.02 sec)

現状は以下のように設定されています。

  • パスワードの文字数 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%’;
+————————————————–+———–+
| Variable_name                                            |  Value      |
+————————————————–+———–+
| validate_password_check_user_name           |  OFF        |
| validate_password_dictionary_file                 |                |
| validate_password_length                            |  5            |
| validate_password_mixed_case_count          |  1            |
| validate_password_number_count                |  1            |
| validate_password_policy                             |  LOW       |
| validate_password_special_char_count          | 1            |
+————————————————-+————+
7 rows in set (0.02 sec)

※パスワードポリシーが「LOW」なのでパスワードの長さ(password_length)だけが有効になります。

設定変更が確認出来たら完了です。

 

パスワード再設定

パスワードを再設定します。

mysql> set password for root@localhost=password('任意のパスワード’);

パスワードが「abcde」に変更されました。

以上で、MySQLのインストールと設定は完了です。

2018年6月20日CentOS 6, Linux

Posted by さなころ