MySQL: MySQL5.7→8.0へアップグレード方法

2018年4月19日(現地時間)、OSSデータベース「MySQL」の開発チームは、最新のメジャーリリース「MySQL 8.0.11(MySQL 8.0)」を発表しました。今回のメジャーリリースは MySQL 8系のGA(一般公開)版という位置付けで、5.7系より最大2倍高速としています。MySQL5.7→8.0へアップグレード手順をまとめます。(2018/04/22作成)

MySQL mcmurryjulie / Pixabay

公式ブログ: Announcing General Availability of MySQL 8.0
https://blogs.oracle.com/mysql/announcing-general-availability-of-mysql-80

0.環境

1.アップグレード手順

1)RPMリポジトリの追加

※最新版のリポジトリURLは下記を参照されたい。
https://dev.mysql.com/downloads/repo/yum/

2)MySQLの停止

3)MySQLファイルのバックアップ

4)MySQLのアップグレード

5)MySQLの起動

6)MySQLテーブルのアップグレード

※「 Upgrade process completed successfully. 」メッセージが表示されれば「正常完了」となる。

7)MySQLの再起動

3.アップグレードエラーと対応

1)MySQL 8.0.xでは「 query_cache 」は廃止された

MySQL 8.0: Retiring Support for the Query Cache

MySQLのクエリーキャッシュはパフォーマンスを改善するためにあるが、それは重大なスケーラビリティー上の問題を抱えていて、深刻なボトルネックに簡単になってしまいかねない。

2)MySQL 8.0.xにおけるデフォルト認証形式を変更する

MySQL 8.0.xとそれ以降は、認証プラグインを指定しないでユーザーを作成した場合のデフォルトが caching_sha2_password になっているので、MySQL 8.0.xとそれ以降にアップグレードしてから(プラグインを指定せずに)新しく作ったユーザーに対して、5.7とそれ以前と caching_sha2_password をサポートしていないライブラリーで接続しようとすると炸裂する。これを避けるにはサーバー側に default_authentication_plugin を設定する。

3)MySQL 8.0.x Syntax error or access violation: 1064

Syntax error or access violation: 1064 #12564
https://github.com/matomo-org/matomo/issues/12564

以上

Pocket

About yoshimasa

埼玉県さいたま市在住、2男3女のパパです。Linux系の技術情報を中心にまとめています。1978年2月生まれ。

コメントを残す