ホームページ >データベース >mysql チュートリアル >MySQL 8.0 にアップグレードした後に Node.js 認証の問題を解決するにはどうすればよいですか?
MySQL 8.0 での Node.js 認証の問題
以前に root アカウントを使用して MySQL データベースに接続していた Node.js アプリケーションで認証エラーが発生する場合があるデフォルト認証の変更により MySQL 8.0 にアップグレードする場合plugin.
問題の理解
MySQL 8.0 では、デフォルトの認証プラグインとして caching_sha2_password が使用されるようになりましたが、MySQL 5.7 では mysql_native_password が使用されました。 MySQL 用の特定の Node.js ドライバーは現在、新しいプラグインと互換性のある認証メカニズムをサポートしていません。
考えられる解決策
この問題を解決するには、次のいずれかの実装を検討してください。回避策:
ユーザーを変更するアカウント:
古い mysql_native_password プラグインを使用するように root ユーザー アカウントを変更します:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';
新しいユーザーを作成します:
作成mysql_native_password を使用する新しいユーザー アカウントプラグイン:
CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';
結論
Node.js と MySQL 8.0 の間の認証の問題は、デフォルトの認証プラグインの変更に起因します。提供された回避策により、ユーザーは古いプラグインまたは公式 MySQL コネクタを使用して MySQL 接続を維持できるようになります。 MySQL 用の Node.js ドライバーの更新に常に注意して、恒久的なソリューションを実装することをお勧めします。
以上がMySQL 8.0 にアップグレードした後に Node.js 認証の問題を解決するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。