2011-01-22 105 views
8

長話短說,我最終在EasyPHP中從PHPMyAdmin刪除了root用戶。經過一番研究,我使用skip-grant-tables來重新獲得數據庫訪問權限。但是,現在,我無法做任何事情,因爲root用戶擁有'無權限'。phpMyAdmin報告'沒有權限'

這表明,當以「root」身份登錄時,我確實有能力通過SQL創建數據庫。

我嘗試了以下內容,類似:

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

不過,我不能做任何事情。此外,我有此消息:

用於使用鏈接表的附加功能已被禁用。找出爲什麼點擊這裏。

點擊進入顯示:

$cfg['Servers'][$i]['pmadb'] ... OK 
$cfg['Servers'][$i]['relation'] ... not OK [ Documentation ] 
General relation features: Disabled 

$cfg['Servers'][$i]['table_info'] ... not OK [ Documentation ] 
Display Features: Disabled 

$cfg['Servers'][$i]['table_coords'] ... not OK [ Documentation ] 
$cfg['Servers'][$i]['pdf_pages'] ... not OK [ Documentation ] 
Creation of PDFs: Disabled 

$cfg['Servers'][$i]['column_info'] ... not OK [ Documentation ] 
Displaying Column Comments: Disabled 
Browser transformation: Disabled 

$cfg['Servers'][$i]['bookmarktable'] ... not OK [ Documentation ] 
Bookmarked SQL query: Disabled 

$cfg['Servers'][$i]['history'] ... not OK [ Documentation ] 
SQL history: Disabled 

$cfg['Servers'][$i]['designer_coords'] ... not OK [ Documentation ] 
Designer: Disabled 

$cfg['Servers'][$i]['tracking'] ... not OK [ Documentation ] 
Tracking: Disabled 

重新安裝的EasyPHP不解決這個問題,並沒有在VirtualStore存在(如一個論壇帖子的建議)。有一個特定的MySQL文件,我應該尋找?

任何想法?這確實阻止了我的應用程序開發。

謝謝。

+0

這聽起來像你只需要正確設置授權表。如果你能幫我一個忙,並且`SELECT * FROM mysql.user WHERE user ='root'`(當然有--skip-grant-tables)並且粘貼給你的東西,這可能會有所幫助。 – cHao 2011-01-22 20:32:51

+0

root @ localhost擁有所有Y的 – Peter 2011-01-22 20:36:36

+0

當你連接時你正在連接到'localhost'? (有時候MySQL可能會變鈍;如果你連接到你的IP地址,它喜歡看到你來自你的IP而不是本地主機。) – cHao 2011-01-22 20:39:44

回答

15

這是超級討厭。

這似乎是一個phpMyAdmin的錯誤。

清除瀏覽器cookies,發生了什麼事情是phpMyAdmin「緩存」你沒有(或可能沒有在某個時間點)創建數據庫訪問的事實。

除了在瀏覽器窗口中刪除用於phpMyAdmin的Cookie(獲取新的會話ID)或刪除phpMyAdmin Web服務器上的會話文件,無法重置它。

3

如果您的機器啓用了IPv6,「localhost」將解析爲::1,而不是127.0.0.1。這可能會導致問題。

嘗試連接到「127.0.0.1」而不是「localhost」。這應該強制mysql通過IPv4地址進行身份驗證,所以請確保127.0.0.1在那裏。

或者,如果您擁有管理員權限,則可以將本地主機映射回c:\Windows\System32\Drivers\etc\hosts中的127.0.0.1。

1

原來是Google Chrome的特定問題,因爲它現在可以在IE中使用。我會嘗試運行CCleaner。

謝謝大家。

2

cHao和Andrew的回答爲我解決了這個問題。我將MySQL數據庫用戶表中的所有權限重置爲yes。所有的數據庫然後重新出現在phpMyAdmin中,但我沒有'創建數據庫'的特權。清除了phpMyAdmin cookie,甚至沒有成功升級phpMyAdmin。然後我進入了tmp/php目錄,並刪除了在那裏找到的會話文件(名爲sess + random ascii),併成功!

0

我剛剛遇到同樣的問題(失去了訪問我的本地數據庫)。這個問題似乎與運行Gecko或類似的瀏覽器有關(如KHTML ......我在Opera上)。按照建議刪除phpMyAdmin cookie後,我仍然有沒有權限。所以我去了localhost/xampp,然後點擊安全。在該頁面是一個鏈接(HTTP://localhost/security/xamppsecurity.php)帶我到一個頁面標題安全控制檯的MySQL & XAMPP目錄保護

我離開當前密碼領域的空白,並輸入一個新的密碼;我認爲我選擇cookie作爲PhpMyAdmin身份驗證方法(它實際上說PhpMyAdmin 驗證,但嘿...)。一旦我提交了密碼更改並再次嘗試訪問phpMyAdmin,我就恢復了所有數據庫,並再次創建更多;消息已消失沒有權限

還有在底部說

的成功運行配置存儲器未完全配置的消息,一些擴展功能已被停用。找出爲什麼點擊這裏。

但這是另一個時代的另一條河。