LoginSignup
0
0

More than 5 years have passed since last update.

[memo] MySQL5.7 install on CentOS7.4

Last updated at Posted at 2018-03-02

MariaDBの削除

CentOS7以降はデフォルトでMariaDBがインストールされているためアンインストールする。

インストール確認

$ rpm -qa | grep maria
mariadb-libs-5.5.56-2.el7.x86_64

アンインストール、関連ディレクトリ削除

$ sudo yum remove mariadb-libs
$ sudo rm -rf /var/lib/mysql

MySQL install

リポジトリ追加

$ sudo rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

MySQL install

$ sudo yum install --enablerepo=mysql57-community mysql-community-server

バージョン確認

$ mysqld --version
mysqld  Ver 5.7.21 for Linux on x86_64 (MySQL Community Server (GPL))

自動起動設定

$ sudo systemctl enable mysqld.service

起動

$ sudo service mysqld start

初期設定

パスワード設定

ログに出力されている初期パスワードを用いる。

$ cat /var/log/mysqld.log | grep 'password is generated'
2018-02-22T03:46:29.817769Z 1 [Note] A temporary password is generated for root@localhost: hogehoge

※ hogehoge 部分が初期パスワード

初期パスワードでログインする。

$ mysql -u root -phogehoge

新たなパスワードを設定。
※MySQL5.7から「大小英文字+数字+記号の4種を含んだ8文字以上」がパスワードの条件になった。

> SET PASSWORD = 'Password-0123' ;

一度ログアウトし、新たなパスワードでログイン確認。

> exit
$ mysql -u root -pPassword-0123

tmpディレクトリ作成

$ sudo mkdir -p /var/lib/mysqltmp
$ sudo chown mysql:mysql /var/lib/mysqltmp
$ sudo chmod 755 /var/lib/mysqltmp

MySQL 再起動

$ sudo service mysqld restart

補足

下記のようなエラーを出力して起動に失敗する事がある。

/var/log/mysqld.log
[ERROR] InnoDB: The Auto-extending innodb_system data file './ibdata1' is of a different size 768 pages (rounded down to MB) than specified in the .cnf file: initial 65536 pages, max 0 (relevant if non-zero) pages!

「DBファイルが不適切」との事なので、初回起動時に作られたファイルを削除してから再起動させる。

$ sudo rm -f /var/lib/mysql/ibdata1
$ sudo rm -f /var/lib/mysql/ib_logfile0
$ sudo rm -f /var/lib/mysql/ib_logfile1
$ sudo service mysqld restart

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0