👾

Mac の Homebrew で mysql-client@5.7 が入らなくなった

2024/08/13に公開

はじめに

今日 Mac のローカルで古い mysql に接続しようとしたら次のようなエラーが発生しました。

% mysql -h 127.0.0.1 -u hoge -p      
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2059 (HY000): Authentication plugin 'mysql_native_password' cannot be loaded: dlopen(/opt/homebrew/Cellar/mysql-client/9.0.1/lib/plugin/mysql_native_password.so, 0x0002): tried: '/opt/homebrew/Cellar/mysql-client/9.0.1/lib/plugin/mysql_native_password.so' (no such file), '/System/Volumes/Preboot/Cryptexes/OS/opt/homebrew/Cellar/mysql-client/9.0.1/lib/plugin/mysql_native_password.so' (no such file), '/opt/homebrew/Cellar/mysql-client/9.0.1/lib/plugin/mysql_native_password.so' (no such file)

あれ? mysql-client って 9 入れてたんだっけ?となりましたが、なんかの拍子に最新になってしまっていました。

% mysql --version
mysql  Ver 9.0.1 for macos14.4 on arm64 (Homebrew)

mysql-client@5.7 を入れてみようと試みる

まず削除します。

% brew uninstall mysql-client

次にインストールを試します。

% brew install mysql-client@5.7
Error: mysql-client@5.7 has been disabled because it is not supported upstream! It will be disabled on 2024-08-01.

なんと! 2024-08-01 までだったとは 😢

とりあえず繋がればいいので 8.0 を試してみます。

mysql-client@8.0 を入れてみようと試みる

まず削除します。

% brew uninstall mysql-client

続いて 8.0 をインストールします。

% brew install mysql-client@8.0

パスを通します。

% echo 'export PATH="/opt/homebrew/opt/mysql-client@8.0/bin:$PATH"' >> ~/.zshrc
% source ~/.zshrc 

バージョンを確認します、

% mysql --version
mysql  Ver 8.0.39 for macos14.4 on arm64 (Homebrew)

8.0 が入りました!
接続もできました!
とりあえずよしとします。

そもそもなんで接続できなかったかのか?

https://dev.mysql.com/doc/refman/9.0/en/mysql-nutshell.html

「Features Removed in MySQL 9.0」に

mysql_native_password plugin.
The mysql_native_password authentication plugin, deprecated in MySQL 8.0,
 has been removed. The server now rejects mysql_native authentication
 requests from older client programs which do not have CLIENT_PLUGIN_AUTH
 capability.
mysql_native_password プラグイン。
MySQL 8.0 で廃止された mysql_native_password 認証プラグインは削除されました。
サーバは CLIENT_PLUGIN_AUTH 機能を持たない古いクライアントプログラムからの mysql_native
認証要求を拒否するようになりました。

と書いてありました。

参考ページ

https://qiita.com/mitsuaki1229/items/0894b9dedcb97402b0c3

https://shogo82148.github.io/blog/2023/03/29/2023-03-29-downgrade-homebrew/

レスキューナウテックブログ

Discussion