技術ブログ

プログラミング、IT関連の記事中心

Node.jsからMySQLを実行した際にER_NOT_SUPPORTED_AUTH_MODEエラーが出る場合

目次

状況

Node.jsからMySQLを実行した際に「エラーの原因」に記載のエラーが発生する
ターミナルなどで、MySQLを実行しても問題なく実行ができる
Node.jsで使用しているユーザーでもMySQLに接続ができる

エラーの原因

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

エラー文から、認証系のエラーだと推察できるが、「状況」に記載の通りMySQLのログイン情報などに間違いはない。

解決方法

ターミナルなどで、「root」ユーザーでアクセスし、Node.jsで使用しているユーザーのパスワードを以下のように設定する。 ※「user_name」「password」は各自で書き換えてください。

ALTER USER 'user_name'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'