ホームページ > データベース > mysql チュートリアル > Node.js アプリケーションは MySQL 8.0 のキャッシュ SHA2 パスワードを使用してどのように認証できますか?

Node.js アプリケーションは MySQL 8.0 のキャッシュ SHA2 パスワードを使用してどのように認証できますか?

DDD
リリース: 2024-12-14 15:23:33
オリジナル
688 人が閲覧しました

How Can Node.js Applications Authenticate with MySQL 8.0's Caching SHA2 Password?

MySQL 8.0 への接続における Node.js 認証の問題

MySQL 8.0 では、Node.js プログラムが MySQL 8.0 に接続する際に困難を引き起こす新しい認証メカニズムが導入されています。データベース。以前の MySQL バージョンで使用されていたレガシー認証方法は、デフォルトではサポートされなくなりました。

認証メカニズムの不一致

MySQL 5.7 では認証に mysql_native_password プラグインが採用されていましたが、MySQL 8.0 ではcaching_sha2_パスワード。現在、Node.js コミュニティ ドライバーには、新しいプラグインと互換性のあるメカニズムがありません。

Node.js の回避策

この問題を回避するには、次の 2 つの回避策が考えられます。

  • レガシーへの復帰プラグイン:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'MyNewPass';
ログイン後にコピー

これにより、古い認証方法を使用するように root アカウントが変更されます。

  • レガシー プラグインを使用した新しいユーザーの作成:
CREATE USER 'foo'@'localhost' IDENTIFIED WITH mysql_native_password BY 'bar';
ログイン後にコピー

これにより、別のユーザーが作成されますレガシー プラグイン。

MySQL コネクタを使用した代替オプション

もう 1 つの解決策には、公式の MySQL Node.js コネクタの使用が含まれます。このコネクタは X プロトコルを利用し、すぐに使える新しい認証メカニズムをサポートします。

コミュニティ サポートとアップデート

これに対処することを目的とした今後のプル リクエストがあります。コミュニティ Node.js ドライバー内の問題。ただし、アップデートにはしばらく時間がかかることが予想されます。

以上がNode.js アプリケーションは MySQL 8.0 のキャッシュ SHA2 パスワードを使用してどのように認証できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート