MySQL密码正确却无法本地登录-1045 Access denied for user 'root'@'localhost' (using password:YES

MySQL密码正确却无法本地登录

报错如下:

ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)

解决方法:
1、在启动mysql的参数中加入跳过密码问题方式,如下:
vim /etc/my.cnf
并在[mysql]下面加上skip-grant-tables,
这个用于跳过密码问题,但是这并不能彻底解决。

2、重启mysql服务

本人用的是Linux系统的Mysql,语句如下:

查看端口号:

ps aux|grep mysqld

查看状态:

systemctl status mysqld

重启mysql服务

systemctl restart mysqld

尝试连接:

mysql -uroot -p123456

输入密码,刚才已经设置跳过密码了可忽略

操作步骤如下:

[root@localhost ~]# mysql -uroot -p123456
mysql> use mysql
Database changed
mysql> select user,host,password from user where user='root';
+------+-----------------------+-------------------------------------------+
| user | host | password |
+------+-----------------------+-------------------------------------------+
| root | % | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
| root | localhost.localdomain | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
| root | 127.0.0.1 | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
| root | ::1 | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
+------+-----------------------+-------------------------------------------+
4 rows in set (0.02 sec)

mysql> update user set host='localhost' where user='root' and host='%';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0

mysql> flush privileges;
Query OK, 0 rows affected (0.03 sec)

mysql> quit
Bye
OK,退出mysql,重启mysql就解决问题了

前后对比一下:
[root@localhost ~]# mysql -uroot -p
mysql> use mysql;
Database changed
mysql> select user,host,password from user where user='root';
+------+-----------------------+-------------------------------------------+
| user | host | password |
+------+-----------------------+-------------------------------------------+
| root | localhost | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
| root | localhost.localdomain | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
| root | 127.0.0.1 | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
| root | ::1 | *00A51F3F48415C7D4E8908980D443C29C69B60C9 |
+------+-----------------------+-------------------------------------------+
4 rows in set (0.00 sec)

mysql> 
OK!

 

 

gook luck!

posted @ 2019-12-20 14:15  佩奇er  阅读(3913)  评论(0编辑  收藏  举报