2012-05-02 51 views
1

我有一個安裝腳本,用於設置MySQL用戶+數據庫+一些表。它在mysql 5.0中工作正常,但我們最近升級到了Ubuntu 12.04,它隨MySQL 5.5一起提供。但在MySQL 5.5中,我收到錯誤。在MySQL 5.5中添加用戶問題

該問題似乎與添加用戶有關。我用這樣一行建立根用戶,這將在後面使用登錄和設置的剩下的東西:

INSERT INTO mysql.user VALUES('%','myrootuser','','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','Y', 
'Y','Y','','','','',0,0,0,0,'',''); 
flush privileges; 

的命令成功。然而,這種新的「myrootuser」登錄時,用戶似乎並沒有足夠的權限:

[email protected]:~$ mysql -u myrootuser -e 'select * from mysql.user;' 
ERROR 1142 (42000) at line 1: SELECT command denied to user ''@'localhost' for table 'user' 

而且我注意到,我可以不存在的用戶名,這可能是混淆了真正的問題登錄:

[email protected]:~$ mysql -u thisuserdoesnotexist 
Welcome to the MySQL monitor. Commands end with ; or \g. 
Your MySQL connection id is 40 
Server version: 5.5.22-0ubuntu1 (Ubuntu) 

mysql> 

5.5我沒有意識到MySQL身份驗證有一些變化嗎?

+1

是否有直接修改用戶標籤的原因,而不是使用帳戶管理語句http://dev.mysql.com/doc/refman/5.5/en/account-management-sql.html? –

回答

0

對於用戶創建問題,請嘗試使用phpMyAdmin來添加它。 PMA比SQL查詢更好!

對於您的登錄問題,請刪除用戶列表中的用戶*(使用PMA)。它會解決你的問題!我遇到了同樣的問題,我修復了它。