MySQL5.7中,用root用戶登錄不進去數據庫,報如下錯誤,而後從新修改了密碼,好了。

root用戶登錄數據庫登錄不進去,報如下錯誤,而後從新修改了密碼,具體操做以下:mysql

 配置文件中加了skip-grant-tables,/etc/init.d/mysqld重啓以後能夠進去了;因此必定是密碼的問題,因此我開始改密碼sql

##咱們把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 |
+-----------+-----------+ide

2 rows in set (0.01 sec)spa

可是到這仍是不行,你用下面的命令會發現一個狀況blog

mysql> select * from mysql.user\G;ip

Grant顯示N--mysql權限架構體系(應該是這麼說)是關閉的因此得執行如下操做:it

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)io

退出mysql,將skip-grant-tables注掉,而後重啓mysql。此時在登錄就能夠了。

相關文章
相關標籤/搜索