2009-04-28 110 views
0

我正在嘗試使用以下命令爲MySQL用戶設置權限。無法對MySQL用戶設置權限

GRANT ALL ON joomla。* to user @ localhost;

我已經嘗試了很多版本,但他們全部迴歸: ERROR 1044(42000):拒絕訪問用戶「」 @「localhost」的數據庫「joomla2」

這似乎表明,用戶名「用戶「沒有得到通過?我已經嘗試過很多版本的命令,還有什麼我需要注意的。

PS:我的名字是不是實際上是「用戶」,以防萬一有人提到,這是一個保留字或類似的東西。

+0

看起來像一個數據庫(的Joomla)您授予特權,但是嘗試連接到另一個數據庫(joomla2)。錯字? – 2009-04-28 07:36:33

+0

耶我在這個問題部分錯字,想擺脫的2所以它是清潔的,但忘記它會彈出錯誤味精...感謝 – Ankur 2009-04-28 07:52:01

回答

2

請嘗試查看特權表。例如:

> use mysql; 
> select * from db; 

這可能會提示您發生了什麼問題。

您也可以嘗試通過指定[email protected]'127.0.0.1'並使用-H 127.0.0.1標誌(如果使用的是mysql cmd行客戶端)連接到tcp而不是unix套接字。

您是否嘗試過指定使用GRANT語句的「IDENTIFIED BY‘MYPWD’」部分密碼?

1

這工作對我來說:

GRANT ALL PRIVILEGES ON joomla.* TO 'username'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION; 

我認爲,問題是,你不給密碼。

此外,您是否使用可以授予其他用戶權限的用戶?你是以root身份還是以普通用戶身份連接?

+0

YEP還是同樣的事情 - 有密碼的,我想盡組合,試過你給我的以及只是四倍檢查 – Ankur 2009-04-28 07:47:55

1

按照MySQL Ref Manual我說你錯過了「在上面的語句。

你嘗試:

GRANT ALL ON joomla.* to 'user'@'localhost'; 
+0

是試了很多次,但是感謝 – Ankur 2009-04-28 07:47:15

1

你登錄到MySQL作爲用戶@本地當您嘗試並運行此命令?

如果是這樣你將無法自行指定你需要做它,而登錄爲root用戶,或者是誰能夠分配權限的其他用戶的權限。

+0

我的root用戶沒有用戶名和密碼。當我最初登錄時,它不要求任何用戶名或密碼,所以我假設我是root用戶,此時 – Ankur 2009-04-28 07:50:03

0

謝謝大家。它沒有回答這個問題,但是我將重新安裝mysql,並且這次給它一個正確的root用戶名和密碼。上次我把這些留空。長期的解決方案,但它會解決問題。

0

事後您是否重新啓動服務器?如果沒有,你需要發出FLUSH PRIVILEGES