MySQL5.7がそろそろEOLなってしまうので色々検証していてそのメモです。
移行に関するドキュメント
MySQL公式
https://dev.mysql.com/blog-archive/upgrading-to-mysql-8-0-here-is-what-you-need-to-know/
AWS RDS公式
https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.MySQL.html
事前チェック
Update Checker Utility
MySQL公式の移行に関するドキュメントに記載されているチェック項目をツールで実施してくれるようです。
ツールの公式URL
https://dev.mysql.com/doc/mysql-shell/8.0/ja/mysql-shell-utilities-upgrade.html
インストール
インストールが公式ドキュメント通りにいかなかったのでメモ
# apt install する準備
$ wget https://dev.mysql.com/get/mysql-apt-config_0.8.26-1_all.deb
$ sudo dpkg -i mysql-apt-config_0.8.26-1_all.deb
# ここで [Which MySQL product do you wish to configure?] とでてくる
# 一覧から「OK」選び、tabキーを押下して「OK」を選択、Enter
# インストール
$ sudo apt-get update
$ sudo apt-get install mysql-shell
使い方
# 接続する
$ mysqlsh ユーザ名@DBエンドポイント
# チェックを流す 「util.checkForServerUpgrade()」を入力してEnter
MySQL DBエンドポイント名:3306 ssl JS > util.checkForServerUpgrade()
~~ チェック結果がずらずらでます ~~~
# mysqlshから抜ける 「\q」を入力してEnter
MySQL DBエンドポイント名:3306 ssl JS > \q
MySQL Check
mysql clientに内包されているっぽい
手軽に確認できます
Update Checker Utilityより限定的なチェックをするみたいです。
$ mysqlcheck -u ユーザ名 -h DBエンドポイント -p --all-databases --check-upgrade