👋

HomebrewでMySQL8を入れたが、node.jsから接続できない(認証方式変更)

2020/01/09に公開

エラー内容

Client does not support authentication protocol requested by server; consider upgrading MySQL client

原因

MySQL8から認証方式が変わった(caching_sha2_password)ようで、 Homebrewからインストールできるmysqlはその認証方式に対応していないのが原因っぽい。

やったこと

パスワードのポリシーを確認

SHOW VARIABLES LIKE 'validate_password%';

認証方式の変更

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

反映

flush privileges;

確認

SELECT user, host, plugin FROM mysql.user;

f:id:gdtypk:20210906154716p:plain

参考

https://stackoverflow.com/questions/50093144/mysql-8-0-client-does-not-support-authentication-protocol-requested-by-server https://its-office.jp/blog/web/2019/02/13/mysql8.html https://qiita.com/ucan-lab/items/3ae911b7e13287a5b917

GitHubで編集を提案

Discussion