mysql誤刪root用戶恢復方法
裝完數據庫清理一些默認賬號的時候不小心把root刪除了,flush privileges 之后的新 root 忘了grant任何權限,查看mysqld選項里面有個 −−skip-grant-tables
#/usr/libexec/mysqld --verbos --help
mysql5.5手冊說明如下
--skip-grant-tables
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系統(tǒng)下的MySQL服務器的一個啟動腳本。這個腳本增加了一些安全特性,會在啟動MySQL服務器以后繼續(xù)監(jiān)控其運行情況,并在出現錯誤的時候重新啟動服務器。后臺啟動mysql
#mysqld_safe --skip-grant-tables &
如果沒有root賬戶就添加一個
INSERT INTO user SET User='root',Host='localhost',ssl_cipher='',x509_issuer='',x509_subject='';
直接輸入mysql連接并添加權限,這時候是不能使用grant命令的,只能用update
UPDATE user SET Select_priv='Y',Insert_priv='Y',Update_priv='Y',Delete_priv='Y',Create_priv='Y',Drop_priv='Y',Reload_priv='Y',Shutdown_priv='Y',Process_priv='Y',File_priv='Y',Grant_priv='Y',References_priv='Y',Index_priv='Y',Alter_priv='Y',Show_db_priv='Y',Super_priv='Y',Create_tmp_table_priv='Y',Lock_tables_priv='Y',Execute_priv='Y',Repl_slave_priv='Y',Repl_client_priv='Y',Create_view_priv='Y',Show_view_priv='Y',Create_routine_priv='Y',Alter_routine_priv='Y', Create_user_priv='Y',Event_priv='Y',Trigger_priv='Y',Create_tablespace_priv='Y',authentication_string='' WHERE User='root';
注意我用的是mysql是5.5版本,可能操作過程中sql語句或其他地方有不同,語句執(zhí)行完畢之后需要flush privileges ,還可能要重新登錄才行。
相關文章
mysql too many open connections問題解決方法
這篇文章主要介紹了mysql too many open connections問題解決方法,其實是max_connections配置問題導致,它必須在[mysqld]下面才會生效,需要的朋友可以參考下2014-05-05
mysql導入sql文件報錯 ERROR 2013 2006 2002
今天在做項目的時候遇到個問題,就是往mysql里導入sql文件的時候總是報ERROR 2013 2006 2002,研究了一番才找到解決辦法,這里記錄下來分享給大家2014-11-11
MySQL存儲過程中使用WHILE循環(huán)語句的方法
這篇文章主要介紹了MySQL存儲過程中使用WHILE循環(huán)語句的方法,實例分析了在MySQL中循環(huán)語句的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-07-07

