2012-12-20 31 views
5

我在OS X上玩弄MySQL,並且使用DROP USER刪除了所有'root'用戶。然後我又添加了一些,然後做了GRANT ALL on *.* to 'root'@'localhost';,然後在驗證確實可以登錄並執行一些特權操作後註銷。我不小心鎖定了MySQL的根目錄

不幸的是,我沒有嘗試的特權操作之一是GRANT ALL on *.*。事實證明,您無權授予GRANT ALL命令的權限。所以現在我被卡住了。我不能給任何人任何其他的特權。

在這一點上,我實際上沒有任何MySQL數據。我可以擦拭安裝並完成。但我想解決這個問題,而不是訴諸於這個極端。我怎麼做?

回答

9

將下面的文件:

GRANT ALL ON *.* TO 'root'@'localhost' WITH GRANT OPTION; 
FLUSH PRIVILEGES; 

重啓mysqld--init-file選項指定文件。

+0

耶!我想到了這一點,但是我尋求答案的結果告訴我,沒有人真的在StackOverflow上爲這種情況給出了很好的答案。我希望有人會給出這個答案,因爲它需要在這裏。 :-) – Omnifarious