Heroku の jawsdb で MySQL8.0 を使う方法
Heroku のアドオンである jawsdb を使用する際に MySQL8.0 を使う方法についての説明です。
現在はデフォルトでは MySQL5.7 がデフォルトで使用されるようです。
バージョンを指定する方法
ドキュメントに記載されているように、下記のコマンドを実行することで、MySQL のバージョンを指定することができます。
heroku addons:create jawsdb:PLANNAME -a HEROKUAPPNAME --version=8.0
HEROKUAPPNAME は他のコマンドと同様に heroku apps コマンドで表示される登録した名前ですね。 少しわかりにくいと思ったのですが、 PLANNAME は画面からプランを選ぶときに表示される名前のことです。
無料のプランを使用する場合の PLANNAME は kitefin となるので、実際に実行するコマンドは下記のようになります。
heroku addons:create jawsdb:kitefin -a HEROKUAPPNAME --version=8.0
上記コマンドでアドオンを追加後に、MySQL でバージョンを確認すると、バージョン8になっていました!
mysql> select version(); +-----------+ | version() | +-----------+ | 8.0.15 | +-----------+ 1 row in set (0.16 sec)
アドオンの表示が変わる
Heroku のコンソールの Resources > Add-ons の欄を確認すると、Attached as JAWSDB_JADE と表示されていました。どうやら JADE の部分は毎回変わるようです。
特に影響はないかなと思うのですが、念の為補足として記載しておきました。
app.jsonの書き方
review app を利用する場合は、app.json にアドオンの一覧を記載していると思います。 そのまま jawsdb を指定すると、デフォルトの MySQL5.7 が使用されてしまうため、下記のように指定することで、review appでも8系を使用することができます。
"addons": [ { "plan": "jawsdb:kitefin", "as": "JAWSDB", "options": { "version": "8.0" } }, ],