裝完數據庫清理一些默認賬號的時候不小心把root刪除了,flush privileges 之後的新 root 忘了grant任何權限,查看mysqld選項裡面有個 −−skip-grant-tables
代碼如下:
mysql5.5手冊說明如下
代碼如下:
This option causes the server to start without using the privilege system at all, which gives anyone with access to the server unrestricted access to all databases. You can cause a running server to start using the grant tables again by executing mysqladmin flush-privileges or mysqladmin reload command from a system shell, or by issuing a MySQL FLUSH PRIVILEGES statement after connecting to the server. This option also suppresses loading of plugins, user-defined functions (UDFs), and scheduled events. To cause plugins to be loaded anyway, use the --plugin-load option.
--skip-grant-tables is unavailable if MySQL was configured with the --disable-grant-options option. See Section 2.10.2, “Typical configure Options”.
mysqld_safe是Unix/Linux系統下的MySQL服務器的一個啟動腳本。這個腳本增加了一些安全特性,會在啟動MySQL服務器以後繼續監控其運行情況,並在出現錯誤的時候重新啟動服務器。後台啟動mysql
代碼如下:
如果沒有root賬戶就添加一個
代碼如下:
直接輸入mysql連接並添加權限,這時候是不能使用grant命令的,只能用update
代碼如下:
注意我用的是mysql是5.5版本,可能操作過程中sql語句或其他地方有不同,語句執行完畢之後需要flush privileges ,還可能要重新登錄才行。