CentOS6.x系でmySQLの最新バージョンを使う方法

centOS 6.9のyumでインストールしたmysqlを5.7にあげる作業メモ

データベースのバックアップ。

$ sudo cp -aR /var/lib/mysql/ /work/db_bk/

dumpデータもとっておく。

$ mysqldump --single-transaction -u root -p -x --all-databases > dump_yyyymmdd.sql
Enter password: {root_password}

削除する前にパッケージ一覧を出力してから、現行の古いパッケージは一括削除する。

$ sudo rpm -qa | grep mysql
$ sudo yum remove mysql*

公式ページよりRPMのURLを確認して、インストール。 ユーザ登録が求められるが急いでいるときは、"No thanks, just start my download."のリンクから落とせる。

$ sudo yum install https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm
$ sudo yum install mysql-community-server

既存のDBがある場合は、DBのアップデートも必要。セーフモードで起動し、DBのアップデートをおこなう。

$ /usr/bin/mysqld_safe --skip-grant-tables &
$ mysql_upgrade -u root -p 
[mysqlのrootパスワード]

Upgrade process completed successfully.
Checking if update is needed.

不足パッケージがあれば、個別に追加でインストールする。