克服 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 设置:
- 设置为 mysql_native_password,允许 user1 登录,但不允许 user2 登录。
-
修改用户身份验证:
-
使用 ALTER USER SQL 命令更改 user1 和 user2 的密码,使其与 caching_sha2_password 兼容:
-
For现有用户:
- 更改用户'mysqlUsername'@'localhost' 通过 'mysqlUsernamePassword' 识别 mysql_native_password;
-
对于新用户:
- 创建用户 'jeffrey'@' localhost' 通过 mysql_native_password 识别'password';
-
-
实现
修改身份验证插件设置后或用户密码,mysqli_connect代码将成功建立与MySQL的连接
结论
通过了解底层身份验证问题并实现所提供的任一解决方案,您可以克服使用时出现的“客户端未知的身份验证方法”错误mysqli_connect 与 caching_sha2_password 身份验证。
以上是为什么 mysqli_connect 失败并显示'客户端未知身份验证方法 [caching_sha2_password]”以及如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!

本文比较了PHP和ASP.NET,重点是它们对大规模Web应用程序,性能差异和安全功能的适用性。两者对于大型项目都是可行的,但是PHP是开源和无关的,而ASP.NET,

本文讨论了PHP数据对象(PDO),这是PHP中数据库访问的扩展名。它通过准备好的语句及其对MySQLI的好处,包括数据库抽象和更好的错误处理,强调了PDO在增强安全性方面的作用。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

记事本++7.3.1
好用且免费的代码编辑器

禅工作室 13.0.1
功能强大的PHP集成开发环境

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Atom编辑器mac版下载
最流行的的开源编辑器