"Host 'localhost' is not allowed to connect to this MySQL server" 的原因及解決辦法

今天在操作數據庫的是否發現突然無法啓動MYSQL服務,想了想原因是因爲自己改動了my.ini文件導致的。所以大家千萬不要隨便改哦~
解決無法啓動mysql的問題很容易,在安裝根目錄下都會有my.ini文件的備份。我們可以根據以前的_bak文件直接恢復。

還有一個問題就是 "Host 'localhost' is not allowed to connect to this MySQL server"

重裝MYSQL後,發現MYSQL數據庫密碼爲空,則update了 user表裏的root密碼,重新連接,發現出現"Host 'localhost' is not allowed to connect to this MySQL server" ,真是離奇的事情一件接一見

後來回想了一下發現,因爲只是update了root,但是MYSQL是有個訪問控制表,root的訪問控制表未更新,就導致了無法訪問mysql

網上找到的解決方法,應該是跳過該表就可以直接使用了,但是這個放在服務器上還是會有一定的風險,那就是任何人在任何地方都可以訪問你的MYSQL,如果安全重要的話還是重新裝一下數據庫好了。


編輯 my.ini linux下爲/etc/my.cnf


在[mysqld]的段中加上一句:skip-grant-tables

例如:

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

skip-name-resolve

skip-grant-tables

目的是爲了:

跳過MySQL的訪問控制,任何人都可以在控制檯以管理員的身份進入MySQL數據庫。

需要注意的是在修改完密碼以後要把MySQL服務器停掉重新啓動纔會生效

重啓mysql服務!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章