解决MySQL登录密码正确却提示错误-1045的方法

  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(www.xcjl0834.com)

  并在[mysql]下面加上skip-grant-tables,

  这个用于跳过密码问题,但是这并不能彻底解决。

  2、重启mysql服务

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

  查看端口号:

  ps aux|grep mysqld

  查看状态:

  systemctl status mysqld

  重启mysql服务

  systemctl restart mysqld

  尝试连接:

  mysql -uroot -p123456(m.jlnk3659999.com)

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

  操作步骤如下:

[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!(3g.xcjl0834.com)

  以上所述是小编给大家介绍的MySQL密码正确却无法本地登录-1045 Access denied for user ''root''@''localhost'' (using password:YES,希望对大家有所帮助。

posted @ 2019-12-21 16:05  Kana酱  阅读(5573)  评论(0编辑  收藏  举报