MySQL 连接错误:解决“mysqlnd 无法连接”问题
尝试连接 MySQL 时,您可能会遇到错误消息:“ mysqlnd 无法使用旧的不安全身份验证连接到 MySQL 4.1。”出现此错误的原因是 MySQL 服务器使用的密码哈希方法与 PHP MySQL 驱动程序 mysqlnd 使用的身份验证机制不匹配。
解决方案
至要解决此错误,您需要将 MySQL 密码哈希方法更新为新的、更安全的格式。这涉及修改 MySQL 配置文件 (my.cnf),如下所示:
为受影响的用户设置新密码:
连接到 MySQL 数据库并运行以下查询使用旧格式的密码识别用户:
<code class="sql">SELECT user, Length(`Password`) FROM `mysql`.`user`;</code>
对于每个受影响的用户,使用 PASSWORD() 函数更新密码:
<code class="sql">UPDATE mysql.user SET Password = PASSWORD('new_password') WHERE user = 'affected_username';</code>
刷新权限:
更新密码后,刷新权限以反映更改:
<code class="sql">FLUSH PRIVILEGES;</code>
注意:
以上是以下是一些可能的标题,请记住它们应该采用问题的形式: * **MySQL 连接错误:为什么会出现“mysqlnd 无法连接”?** * **PHP 和 MySQL:如何使用的详细内容。更多信息请关注PHP中文网其他相关文章!