我不斷收到此錯誤。
我正在使用 mySQL Workbench,我發現 root 的架構權限為空。根本沒有任何特權。
我在使用我的伺服器的各個平台上遇到了問題,而且這是一個突然出現的問題。
root@127.0.0.1 顯然有很多訪問權限,但我是這樣登入的,但它只是分配給本地主機 - 本地主機沒有權限。
我做了一些事情,像是 FLUSH HOSTS
、FLUSH PRIVILEGES
等
但沒有從該方法或互聯網上取得成功。
如何才能恢復 root 存取權?我覺得這很令人沮喪,因為當我環顧四周時,人們希望您“有權訪問”,但我沒有訪問權限,所以我無法進入命令行或任何東西,並且GRANT
自己做任何事情。
運行 SHOW GRANTS FOR root
這是我得到的回報:
錯誤代碼:1141。沒有為使用者“root”定義此類授權 主機“%”
如果您在 MySql 5.7. 中遇到相同的問題:
這是因為MySql 5.7預設允許使用socket連接,這意味著你只需使用
sudo mysql
連接即可。如果你執行sql:然後你就會看到它:
要允許使用 root 和密碼進行連接,請使用命令更新表中的值:
然後再次執行 select 命令,您將看到它已更改:
就是這樣。您可以在執行並完成
sudo mysql_secure_installation
指令後執行此程序。對於 mariadb,請使用
設定密碼。 更多資訊請見 https://mariadb.com/kb/en/set-password/
使用重設root密碼的說明 - 但我們不會重設 root 密碼,而是將強制將一筆記錄插入 mysql.user 表
在初始化檔案中,使用它來取代