MySQL道普請便り

第76回 MySQL 8.0へのアップグレード

この記事を読むのに必要な時間:およそ 5.5 分

リリースからこの記事を書くまでに少し時間が空いてしまいましたが,2018年4月,MySQL 5.7の次のバージョンとなる MySQL 8.0が製品リリースされました。

思い起こせば第2回 MySQLにはじめてのデータを入れてみるの時にはデモンストレーション環境としてMySQL 5.6.26をインストールし,第8回 MySQLのバージョン体系を知るではその環境をMySQL 5.6.27(当時の5.6系最新バージョン)を経てMySQL 5.7.9にバージョンアップしました。

せっかくなので今回も,MySQL 5.7.9からMySQL 5.7.22(2018/07/17現在の5.7系列の最新バージョン)を経て,MySQL 8.0.11へのバージョンアップ方法を紹介したいと思います。

時間のない人のための4行まとめ

  • 第8回 MySQLのバージョン体系を知るの時点と同じく,MySQL 5.7のyumリポジトリーを向いたmysql-releaseパッケージがインストールされているものとします
  • yum upgradeでMySQL 5.7.22にアップグレードします
  • MySQL Shellをインストールし,checkForServerUpgradeを実行します
  • MySQL 8.0のyumリポジトリーを向いたmysql-releaseパッケージに入れ替え,yum upgradeを実行します

第8回の時点でのおさらい

  • MySQL Yum Repositoryを使用して,MySQL 5.7.9のパッケージがインストールされています。
$ rpm -qa | grep -i mysql
mysql-community-libs-5.7.9-1.el6.x86_64
mysql-community-server-5.7.9-1.el6.x86_64
mysql57-community-release-el6-7.noarch
mysql-community-common-5.7.9-1.el6.x86_64
mysql-community-client-5.7.9-1.el6.x86_64
  • 古い(2015年12月時点の)mysql57-community-releaseパッケージがインストールされており,ここにはまだMySQL 8.0用のリポジトリーはリストされていません。
$ cat /etc/yum.repos.d/mysql-community.repo
...
[mysql57-community]
name=MySQL 5.7 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.7-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

MySQL 5.7.22へのアップグレード

まずは同じMySQL 5.7系列の中で,2018/07/17現在の最新版であるMySQL 5.7.22にバージョンアップします。MySQL 5.6.26から5.6.27への時と同じく,yum upgradeでバージョンアップしましょう。

$ sudo yum upgrade mysql-community-server
..
==============================================================================================================================
 Package                              Arch                 Version                      Repository                       Size
==============================================================================================================================
Updating:
 mysql-community-server               x86_64               5.7.22-1.el6                 mysql57-community               153 M
Updating for dependencies:
 mysql-community-client               x86_64               5.7.22-1.el6                 mysql57-community                23 M
 mysql-community-common               x86_64               5.7.22-1.el6                 mysql57-community               332 k
 mysql-community-libs                 x86_64               5.7.22-1.el6                 mysql57-community               2.1 M

Transaction Summary
==============================================================================================================================
Upgrade       4 Package(s)
..

この時点でmysqldプロセスは再起動されます。

mysql_upgradeコマンドを実行しておきましょう。mysql_upgradeコマンドはMySQLのシステムテーブルをアップグレードするためのコマンドです。"Upgrade process completed successfully"の出力があれば完了です。

$ mysql_upgrade -uroot
..
mysql.user                                         OK
Upgrading the sys schema.
Checking databases.
ls.ls                                              OK
sys.sys_config                                     OK
vmstat.vmstat                                      OK
zipcode.prefecture_kana                            OK
zipcode.zipcode                                    OK
Upgrade process completed successfully.
Checking if update is needed.

著者プロフィール

yoku0825

GMOメディア株式会社のDBA。日本MySQLユーザ会員。主に地雷担当。主食はMySQLだがPercona Server,MariaDB,InfiniDBにMroongaストレージエンジンなど,mysqldでありさえすれば雑食。

Twitter:@yoku0825

コメント

コメントの記入