全部产品
云市场

虚拟主机PHP程序报错“mysqlnd cannot connect to MySQL 4.1+ using the old insecure"

更新时间:2017-06-07 13:26:11

风险

  • 如果修改数据库密码为新的密码(与原密码不一致),则需要将网站配置文件中的数据库密码修改为新的密码,如果不确认数据库配置文件如何修改,请谨慎操作联系程序开发商咨询确认后进行处理。

  • 如果还是修改为原数据库密码只是修改了加密方式,不需要修改网站配置文件。

问题描述

虚拟主机PHP程序在安装如Discuz等程序时在数据库安装步骤出现mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. ”错误,如下图:

blob.png

问题分析

该问题原因是由于出于安全考虑PHP5.3版本之后连接MySQL都统一使用41位加密方式,如果在虚拟主机控制面板修改PHP版本,比如5.2改成5.3,并且没有修改数据库加密方式还是用16位加密方式,连接数据库会报如下错误:

Could not connect: mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD(‘your_existing_password’). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file。

解决方法

登陆 虚拟主机管理控制台,找到 数据库信息 > 重置密码(建议重置为原数据库密码),加密模式选择41位加密。同理如果是PHP5.3改成5.2版本,也要修改数据库密码加密模式从41位改成16位。

1.jpg

 

如问题还未解决,请联系售后技术支持