MySQL密码正确却没法本地登陆mysql
报错以下:sql
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: YES)vim
解决方法:
一、在启动mysql的参数中加入跳过密码问题方式,以下:
vim /etc/my.cnf
并在[mysql]下面加上skip-grant-tables,
这个用于跳过密码问题,可是这并不能完全解决。dom
二、重启mysql服务ui
本人用的是Linux系统的Mysql,语句以下:spa
查看端口号:rest
ps aux|grep mysqld
查看状态:code
systemctl status mysqld
重启mysql服务blog
systemctl restart mysqld
尝试链接:ip
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!