php mysqli_connect: クライアントにとって不明な認証方法
P粉170858678
P粉170858678 2023-10-13 18:02:37
0
2
577

php を使用しています mysqli_connect MySQL データベースにログインします (すべてローカルホスト上)

リーリー

これは mysql.user テーブルです:

MySQL サーバーの ini ファイル:

リーリー

MySQL Server ini ファイルで caching_sha2_password を使用すると、user1 または user2 でログインすることはできません;

エラー: mysqli_connect(): サーバーがクライアント [caching_sha2_password] を要求しましたが、不明な認証方法です...

MySQL Server ini ファイルで mysql_native_password を使用すると、user1 でログインできますが、user2 でも同じエラーが発生します。


mySql サーバーで

caching_sha2_password を使用してログインするにはどうすればよいですか?

P粉170858678
P粉170858678

全員に返信(2)
P粉727416639

SQL コマンドでこの問題を解決しました:

リーリー

参照元: https://dev.mysql。 com/doc/refman/8.0/en/alter-user.html

新しいユーザーを作成する場合

リーリー

参照元: https://dev.mysql。 com/doc/refman/8.0/en/create-user.html

これは私にとってはうまくいきました

いいねを押す +0
P粉225961749

PHP 7.4 以降、これは問題ではなくなりました。 mysqlnd は、caching_sha2 認証方法のサポートを追加しました。


現在、新しい caching_sha2 認証機能は PHP mysqli 拡張機能ではサポートされていません。 アップデートがリリースされるまで待つ必要があります。

MySQL 開発者からの関連投稿を表示: https://mysqlserverteam.com/upgrading-to-mysql-8-0-default-authentication-plugin-considerations/

PDO については言及されていません。おそらく PDO 接続を使用してみてください。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!