【发布时间】:2011-11-10 06:19:01
【问题描述】:
我已经在 x86_64 linux 服务器上编译并安装了 mysql-5.1.59。
首先我在cli中设置root密码并登录:
$ bin/mysqladmin -uroot password 'somepass'
$ bin/mysql -uroot -p 'somepass'
mysql>
登录成功!
然后我使用 SQL 语句创建了一个用户:
mysql> grant all privileges on mydb.* to 'myuser'@'localhost' identified by 'somepass';
mysql> flush privileges;
密码与root完全相同。
但经过我的查询:
mysql> select host,user,password from mysql.user;
我注意到两个帐户的密码值不一样。 我尝试使用 myuser 登录 mysql 但失败了。
顺便说一下,如果我这样更改root密码:
mysql> update mysql.user set password=PASSWORD('somepass') where user='root';
mysql> flush privileges;
那我就不能用root登录mysql了:
$ bin/mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
这在我的其他服务器上从未发生过。似乎这个问题与操作系统有关。 散列值之间如何不同? 谢谢!
【问题讨论】:
标签: mysql linux mysql-management mysqladmin