2054无法登陆mysql_windows系统下或者linux系统下phpMyAdmin连接MySQL8.X报错为:“#2054 ”无法登录 MySQL 服务器的解决办法...
昨天晚上,熊二哥哥用phpmyadmin链接他的mysql8.0的时候,提示#2054的错误,说密码明明是对的,就是无法登陆,其实报错#2054并非密码错误,如果密码错误,就直接提示密码错误的提示,而不会是#2054,那具体啥错误呢?先来看看错误图;二、报错原因:由于mysql8.0默认使用了新的密码验证插件caching_sha2_password,而之前的PHP版本中所带的mysqlnd不能支
昨天晚上,熊二哥哥用phpmyadmin链接他的mysql8.0的时候,提示#2054的错误,说密码明明是对的,就是无法登陆,其实报错#2054并非密码错误,如果密码错误,就直接提示密码错误的提示,而不会是#2054,那具体啥错误呢?先来看看错误图;
二、报错原因:
由于mysql8.0默认使用了新的密码验证插件caching_sha2_password,而之前的PHP版本中所带的mysqlnd不能支持新的验证方式。
三、解决方式:
解决思路
具体操作
PHP
升级PHP版本(一定是PHP7.X以上具体也跟你的phpmyadmin有关系,保持在4.0-4.6,可能也有些时候不好使)
mysql
修改mysql的my.cnf(linux下)或者my.ini(windows下),修改验证方式为mysql_native_password
我们使用第二种方式来解决(以windows下为例):
1.修改my.ini文件 找到mysql的路径;
用记事本打开my.ini文件,添加以下语句即可;
#更改为原来的验证方式
default_authentication_plugin= mysql_native_password
2.重启mysql服务,控制面板\所有控制面板项\管理工具\服务下找到mysql进程,mysql8.0默认服务名称为 mysql80,然后直接点右键重启即可完成;
下面教程以linux为例:
1、 首先修改mysql的配置文件my.cnf;
设置任何用户登录都可以获得全部的权限,在[mysqld]的段中加上一句:skip-grant-tables 然后重启mysql
2、 再次执行修改密码的sql语句:
UPDATE user SET Password = password ('new-password') WHERE User = 'root';flush privileges;
3、 接下来重启mysql即可解决问题;
所写所说,是心之所感,思之所悟,行之所得;文当无敷衍,落笔求简洁。 以所舍,求所获;有所依,方所成!(有事儿请详询博主:博主电话以及微信18810292089)
更多推荐
所有评论(0)