RHEL 7 系の環境にちょっと古い Rails 環境を作る必要が出てきて、確認したら Rails 5.0.x かつ mysql2 0.4.5 だった。 ので、これは MySQL 8.0.x 使えないなと、 5.7.x を調達することになったのだけど、ちょっと悩んだのでメモしておく。
yum 経由でインストール
RHEL 5 で yum
に切り替わるあたりで本格的に Linux に入門したので、 yum
は便利で RPM はとにかく大変 (RPM build やら) という認識を個人的に今も引きずっている。
yum
も yum
で依存性の解決があまりよくないとか合ったりするけどそれはおいておく。
という訳でなるべく yum
のリポジトリを提供しているものは利用することにしているのだけど、 MySQL の今のリポジトリ設定する rpm ファイルが mysql80-community-release
のため、 mysql57 は無いのか? と悩んでいた。
結論からいうと、上記の mysql80-community-release
に含まれているので切り替えて使う。
mysql80-community-release に含まれている一覧
以下のミドルウェアが含まれているとのこと。
The MySQL Yum repository includes the latest versions of:
MySQL 8.0 MySQL 5.7 MySQL 5.6 MySQL Cluster 8.0 MySQL Cluster 7.6 MySQL Cluster 7.5 MySQL Workbench MySQL Router MySQL Shell MySQL Connector/C++ MySQL Connector/J MySQL Connector/ODBC MySQL Connector/Python
気づいてなかったんだけど、ページ内のタブで表示が切り替えれた。
[https://dev.mysql.com/downloads/repo/yum/:embed:cite]
切り替え方
Steps for a Fresh Installation of MySQL > Selecting a Release Series 、に書いてある通り、 yum-config-manager で切り替える。
多分 /etc/yum.repos.d/
以下の定義ファイルを直接編集しても大丈夫だとは思う。
[https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/#repo-qg-yum-fresh-install:embed:cite]
sudo yum-config-manager --disable mysql80-community sudo yum-config-manager --enable mysql57-community
このあと yum list mysql-community-*
とかすると、出てくるバージョンが 5.7 系になっているはず。