在MySQL 5.5中添加用户问题

在MySQL 5.5中添加用户问题,mysql,linux,ubuntu,Mysql,Linux,Ubuntu,我有一个安装脚本,它设置了一个MySQL用户+数据库+一些表。它在mysql 5.0中运行良好,但我们最近升级到了Ubuntu 12.04,它与mysql 5.5一起提供。然而,在mysql 5.5中,我遇到了一些错误 问题似乎与添加用户有关。我使用这样一行代码创建一个root用户,该用户稍后用于登录并设置其余内容: INSERT INTO mysql.user VALUES('%','myrootuser','','Y','Y','Y','Y','Y','Y','Y', 'Y','Y','Y'

我有一个安装脚本,它设置了一个MySQL用户+数据库+一些表。它在mysql 5.0中运行良好,但我们最近升级到了Ubuntu 12.04,它与mysql 5.5一起提供。然而,在mysql 5.5中,我遇到了一些错误

问题似乎与添加用户有关。我使用这样一行代码创建一个root用户,该用户稍后用于登录并设置其余内容:

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”登录时,用户似乎没有足够的权限:

jeroen@jeroen-ubuntu:~$ mysql -u myrootuser -e 'select * from mysql.user;'
ERROR 1142 (42000) at line 1: SELECT command denied to user ''@'localhost' for table 'user'
我还注意到,我可以使用不存在的用户名登录,这可能会混淆真正的问题:

ubuntu@myserver:~$ 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身份验证是否有一些我不知道的更改?

对于用户创建问题,请尝试使用phpMyAdmin添加它。PMA比SQL查询更好


对于您的登录问题,请使用PMA删除用户列表中的用户*。它会解决你的问题!我也遇到了同样的问题,我这样做是为了解决它。

您直接修改用户选项卡,而不是使用帐户管理语句,有什么原因吗?