解決mysql登錄錯誤:'Access denied for user 'root'@'localhost'
首先是不知道怎么忽然mysql用命令行,workbench都登錄不了,都提示'Access denied for user 'root'@'localhost'。
數(shù)據(jù)庫卸載重裝了幾次都不行。好像感覺數(shù)據(jù)清理不干凈。解決的過程遇到的坑,這里記錄分享下。
有效的操作記錄下:
1、首先是跳過權(quán)限登錄mysql,查看user表,
停止mysql服務~$ sudo service mysql stop
以安全模式啟動MySQL~$ sudo mysqld_safe --skip-grant-tables &
注意:
可能提示mysqld_safe Directory '/var/run/mysqld' for UNIX socket file don't exist
解決方法:(筆者嘗試發(fā)現(xiàn)必須加sudo)
sudo mkdir -p /var/run/mysqld sudo chown mysql:mysql /var/run/mysqld
再次執(zhí)行上面安全模式啟動mysql ~$ sudo mysqld_safe --skip-grant-tables &
這次提示語句顯示了,mysqld_safe Staring mysqld deamon with database from /var/lib/mysql
這次登錄可以不用密碼:mysql -u root 回車就登錄了
sql語句查詢mysql.user表的情況,如下:
加圖片(以后補)
還有人提議如下這么做,沒嘗試
Open & Edit /etc/my.cnf or /etc/mysql/my.cnf, depending on your distro.
Add skip-grant-tables under [mysqld]
2、發(fā)現(xiàn)user的plugin為socket_plugin,改為mysql_native_password
修改root的plugin權(quán)限:
update mysql.user set authentication_string=PASSWORD('newPwd'), plugin='mysql_native_password' where user='root';
flush privileges;
quit;
(注意這里修改一定要正確,免得跟筆者一樣,粗心的把plugin修改的內(nèi)容少些了一個字母,又有下面的折騰)
3、user表還有其他用戶,root不能登錄,用其他的用戶登錄也行啊。查詢了發(fā)現(xiàn)一下有效操作:
在mysql的安裝目錄,一般在 /etc/mysql里面有個debain.cnf文件,里面有user,password,用這個用了登錄,密碼最后復制,然后就又可以修改user表root的plugin,操作同上。
重啟mysql服務, sudo service mysql restart;
用root用戶就可以登錄。
參考博客:
MySQL ERROR 1698 (28000) 錯誤 http://www.dbjr.com.cn/article/117566.htm
mysql 查看當前使用的配置文件my.cnf的方法 http://www.dbjr.com.cn/article/110395.htm
linux -- Ubuntu查看修改mysql的登錄名和密碼、安裝phpmyadmin http://www.dbjr.com.cn/article/174925.htm
總結(jié)
以上所述是小編給大家介紹的解決mysql登錄錯誤:''Access denied for user ''root''@''localhost'',希望對大家有所幫助!
相關文章
小白安裝登錄mysql-8.0.19-winx64的教程圖解(新手必看)
這篇文章主要介紹了安裝登錄mysql-8.0.19-winx64的教程圖解,非常適合新手學習參考,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03
MySQL報錯Expression #1 of SELECT list 
這篇文章主要介紹了MySQL報錯Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggre問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-09-09
MySQL中union和join語句使用區(qū)別的辨析教程
這篇文章主要介紹了MySQL中union和join語句的用法區(qū)別,舉例說明了union和join在連接操作上的不同作用,需要的朋友可以參考下2015-12-12
MySQL用戶管理與PostgreSQL用戶管理的區(qū)別說明
這篇文章主要介紹了MySQL用戶管理與PostgreSQL用戶管理的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01

