


mysqli_connect が「クライアントに不明な認証方法 [caching_sha2_password]」で失敗するのはなぜですか? どうすれば修正できますか?
mysqli_connect での認証の課題を克服する
mysqli_connect 関数は、PHP でのデータベース接続を容易にします。ただし、caching_sha2_password 認証を使用して MySQL データベースに接続しようとすると、認証の問題が発生する可能性があります。この記事では、根本原因を調査し、この問題の解決策を提供します。
問題
提供されたコード スニペットでは、MySQL Server ini ファイルのdefault_authentication_plugin 設定は次のとおりです。 caching_sha2_password に設定します。この構成により、ユーザーは、対応する caching_sha2_password を持たないユーザー名で認証できなくなります。その結果、「サーバーはクライアントに不明な認証方法を要求しました [caching_sha2_password]」というエラー メッセージが表示されます。
解決策
この問題を解決するには、次の手順を実行します。次のいずれかを実行できます:
-
を変更しますdefault_authentication_plugin 設定:
- user1 のログインは許可するが user2 は許可しないように mysql_native_password に設定します。
-
ユーザーの変更認証:
-
ALTER USER SQL コマンドを使用して、user1 と user2 のパスワードを caching_sha2_password:
-
と互換性があるように変更します。既存のユーザー:
- ALTER USER 'mysqlUsername'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mysqlUsernamePassword';
-
新規ユーザーの場合:
- CREATE USER 'jeffrey'@'ローカルホスト」 IDENTIFIED WITH mysql_native_password BY 'password';
-
-
実装
変更後認証プラグイン設定またはユーザー パスワードを入力すると、mysqli_connect コードは MySQL データベースへの接続を正常に確立します。
結論
根本的な認証の問題を理解し、提供されたソリューションのいずれかを実装することで、 mysqli_connect を caching_sha2_password 認証で使用する場合の「クライアントに不明な認証方法」エラーを解決できます。
以上がmysqli_connect が「クライアントに不明な認証方法 [caching_sha2_password]」で失敗するのはなぜですか? どうすれば修正できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

この記事では、PHPでインターフェイスを作成、実装、および使用する方法について説明し、コード組織と保守性の利点に焦点を当てています。

この記事では、PHPのCrypt()とpassword_hash()の違いについて、パスワードハッシュの違いについて説明し、最新のWebアプリケーションの実装、セキュリティ、および適合性に焦点を当てています。

記事では、入力検証、出力エンコード、およびOWASP ESAPIやHTML浄化器などのツールを使用して、PHPのクロスサイトスクリプト(XSS)を防止します。

PHPでのオートローディングは、必要に応じてクラスファイルを自動的にロードし、メモリの使用を削減し、コード組織を強化することでパフォーマンスを向上させます。ベストプラクティスには、PSR-4の使用とコードを効果的に整理することが含まれます。

PHPストリームは、一貫したAPIを介したファイル、ネットワークソケット、圧縮形式などのリソースの処理を統合し、複雑さを抽象化し、コードの柔軟性と効率を高めます。

この記事では、PHPでファイルアップロードサイズの管理を管理し、2MBのデフォルト制限とPHP.ini設定を変更してそれを増やす方法に焦点を当てています。

この記事では、PHP 7.1で導入されたPHPのヌル可能なタイプについて説明し、変数またはパラメーターが指定されたタイプまたはnullのいずれかを可能にします。読みやすさの改善、タイプの安全性、明示的な意図などの利点を強調し、宣言する方法を説明します

この記事では、プログラミングのunset()とlink()関数の違いについて説明し、目的とユースケースに焦点を当てています。 unset()はメモリから変数を削除しますが、link()はファイルシステムからファイルを削除します。どちらもEFFECにとって重要です


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

メモ帳++7.3.1
使いやすく無料のコードエディター

ホットトピック









