mysql错误代码1045不能登录的原因与解决方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql错误代码1045不能登录的原因与解决方法相关的知识,希望对你有一定的参考价值。
参考技术A 错误如下:1045 Access denied for user 'root'@'localhost' (using password:YES)想起来有可是在navicat添加的root@'%'用户,可能密码和现在新版本5.7的加密不同了,导致密码不对.
所以解决方法是更新用户密码.
注意5.7版本密码保存的列是 authentication_string ,密码要用函数password加密.
更新密码的SQL是 update user set authentication_string=password('密码') where user="root";
下面是Windows平台下操作步骤:
配置文件my.ini ,在mysqld下面添加skip-grant-tables,意思是可以直接回车登录,保存退出。重启mySQL,然后运行cmd
输入mysql -u root -p就可以不用密码登录了,出现password:的时候直接回车可以进入。
1.切换到mysql数据库:use mysql;
2.给root用户设置新密码,
mysql> update user set authentication_string=password('密码') where user="root";
3.刷新数据库mysql> flush privileges;
4.再修改my.ini,把刚加入的"skip-grant-tables"这行删除或者添加#注释,保存退出再重启mysql服务就可以了。
一些参考命令
#删除之前配置 drop user 'root' @ '%' ;
#配置远程登录 CREATE USER 'root' @ '%' IDENTIFIED BY password( '你的密码') ;
#授权 GRANT ALL ON *.* TO 'root' @ '%' ;
#更新权限 flush privileges;
#查看用户,主机,加密方法 select user,host,plugin from user;
以上是关于mysql错误代码1045不能登录的原因与解决方法的主要内容,如果未能解决你的问题,请参考以下文章