【Node】mysql8 利用時 接続が失敗する

現象

こちらのパッケージを利用した際、接続先クライアントが mysql8 だった場合に以下のエラーが発生
www.npmjs.com

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

原因

MySQL 8.0からパスワードの認証形式が変更され、ライブラリ側で互換対応がされていない。

解決方法

古いパスワード認証を利用する

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

一応 issueも上がっているので そのうち発生はしなくなる
https://github.com/mysqljs/mysql/pull/1962