錯誤原因1:用戶名和密碼輸入錯誤
如果確定是這個錯誤,重新輸入下用戶名和密碼就行了。 如果用戶名和密碼忘記了,不要慌,參考下面
首先進入到 my.cnf里面添加一個跳過權限驗證的命令
vim /etc/my.cnf
添加skip-grant-tables,這樣再次登陸就不用輸入密碼,直接回車就進入數據庫了。
添加完后按esc建,然后輸入:wq,進行保存退出
修改完配置文件后,注意重啟下服務才能生效。
service mysqld restart
然后登陸試試
然后進入到mysql數據庫
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密碼訪問。