mysql错误1045怎么解决

发布时间: 2023-11-21 12:23 阅读: 文章来源:1MUMB3628PS

错误如下: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;

•••展开全文