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

錯誤緣由1:用戶名和密碼輸入錯誤mysql

若是肯定是這個錯誤,從新輸入下用戶名和密碼就好了。 若是用戶名和密碼忘記了,不要慌,參考下面sql

首先進入到 my.cnf裏面添加一個跳過權限驗證的命令數據庫

vim /etc/my.cnfvim

添加skip-grant-tables,這樣再次登錄就不用輸入密碼,直接回車就進入數據庫了。ide

 

 添加完後按esc建,而後輸入:wq,進行保存退出ui

修改完配置文件後,注意重啓下服務才能生效spa

 service mysqld restart.net

而後登錄試試rest

而後進入到mysql數據庫blog

use mysql;  --注意後面分號

show tables;

能夠看到有一張user表,這個表裏面就存的用戶的登錄信息,咱們查看一下user表裏面都有啥字段

desc user;

 而後使用命令直接修改密碼就好了,這裏我修改root用戶密碼爲123456爲例

update user set authentication_string=password('123456') where user='root';

而後退出mysql,重啓mysql服務

quit;

service mysqld restart

再次使用用戶名和密碼登錄便可。

錯誤緣由2:root用戶權限不足致使的

這個我參考博客設置的。

根據上一個問題緣由設置skip-grant-tables 後,進入數據庫使用以下命令便可

grant all privileges on *.* to 'root'@'%' identified by '123456';  

root是登錄用戶,%表明的是全部ip地址都能訪問, 最後就是密碼。 grant是贊成的意思,privileges是特權的意思,這句話就是授予root用戶能在任何ip使用123456密碼訪問。

相關文章
相關標籤/搜索