3 回答

TA貢獻(xiàn)1966條經(jīng)驗(yàn) 獲得超4個(gè)贊
如果GRANT ALL
不起作用,請(qǐng)嘗試:
mysqld
使用該--skip-grant-tables
選項(xiàng)停止并重新啟動(dòng)它。mysqld
只需使用以下命令即可連接到服務(wù)器:(mysql
即無-p
選項(xiàng),并且可能不需要用戶名)。在mysql客戶端中發(fā)出以下命令:
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;
之后,您應(yīng)該可以運(yùn)行GRANT ALL ON *.* TO 'root'@'localhost';
并運(yùn)行它。

TA貢獻(xiàn)1946條經(jīng)驗(yàn) 獲得超3個(gè)贊
如果您誤刪除了root用戶,則可以做一件事:
停止MySQL服務(wù)
跑 mysqld_safe --skip-grant-tables &
類型mysql -u root -p,然后按回車。
輸入密碼
在mysql命令行中輸入: use mysql;
然后執(zhí)行以下查詢:
insert into `user` (`Host`, `User`, `Password`, `Select_priv`, `Insert_priv`, `Update_priv`, `Delete_priv`, `Create_priv`, `Drop_priv`, `Reload_priv`, `Shutdown_priv`, `Process_priv`, `File_priv`, `Grant_priv`, `References_priv`, `Index_priv`, `Alter_priv`, `Show_db_priv`, `Super_priv`, `Create_tmp_table_priv`, `Lock_tables_priv`, `Execute_priv`, `Repl_slave_priv`, `Repl_client_priv`, `Create_view_priv`, `Show_view_priv`, `Create_routine_priv`, `Alter_routine_priv`, `Create_user_priv`, `ssl_type`, `ssl_cipher`, `x509_issuer`, `x509_subject`, `max_questions`, `max_updates`, `max_connections`, `max_user_connections`)
values('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','','0','0','0','0');
然后重啟mysqld
萬一其他人需要這個(gè)答案,我今天使用innodb_version 5.6.36-82.0和10.1.24-MariaDB進(jìn)行了嘗試,如果您刪除了反引號(hào),它也可以工作(也沒有單引號(hào),只需刪除它們):
insert into user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv, Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv, Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv, Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv, Repl_client_priv, Create_view_priv, Show_view_priv, Create_routine_priv, Alter_routine_priv, Create_user_priv, ssl_type, ssl_cipher, x509_issuer, x509_subject, max_questions, max_updates, max_connections, max_user_connections)
values('localhost','root','','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','Y','','','','','0','0','0','0');

TA貢獻(xiàn)1859條經(jīng)驗(yàn) 獲得超6個(gè)贊
我還刪除了我作為root用戶時(shí)未顯示在mysql控制臺(tái)中的root和數(shù)據(jù)庫特權(quán),因此更改了用戶名 mysql>mysql -u 'userName' -p;和密碼;
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;
在此命令之后,所有命令都顯示root的數(shù)據(jù)庫。
添加回答
舉報(bào)