MySQL5.7中,用root用戶登陸不進去數據庫,報以下錯誤,然后重新修改了密碼,好了。


root用戶登陸數據庫登陸不進去,報以下錯誤,然后重新修改了密碼,具體操作如下:

 配置文件中加了skip-grant-tables,/etc/init.d/mysqld重啟之后可以進去了;所以一定是密碼的問題,所以我開始改密碼

##我們把root@localhost用戶刪了,然后有新建了這個用戶

 

mysql> delete from mysql.user where user='root' and host='localhost';
Query OK, 1 row affected (0.01 sec)
mysql> select user,host from mysql.user;
+-----------+-----------+
| user      | host      |
+-----------+-----------+
| mysql.sys | localhost |

+-----------+-----------+
1 row in set (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all on *.* to 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> select user,host from mysql.user;
+-----------+-----------+
| user      | host      |
+-----------+-----------+
| mysql.sys | localhost |
| root      | localhost |
+-----------+-----------+

2 rows in set (0.01 sec)

但是到這還是不行,你用下面的命令會發現一個情況

mysql> select * from mysql.user\G;

Grant顯示N--mysql權限架構體系(應該是這么說)是關閉的所以得執行以下操作:

mysql> grant all on *.* to 'root'@'localhost' identified by '123456' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)

退出mysql,將skip-grant-tables注掉,然后重啟mysql。此時在登陸就可以了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM