Welcome

首页 / 数据库 / MySQL / mysql增加新用户无法登陆解决方法

今天安装openstack folsom版本,安装完mysql,为各个服务增加对应的数据库和用户后,发现
无法使用新增的用户登陆mysql。我增加用户的方法如下:
mysql -uroot -p$MYSQL_PASS <<EOF
CREATE DATABASE nova;
GRANT ALL PRIVILEGES ON nova.* TO "nova"@"%" IDENTIFIED BY "$MYSQL_PASS";
CREATE DATABASE glance;
GRANT ALL PRIVILEGES ON glance.* TO "glance"@"%" IDENTIFIED BY "$MYSQL_PASS";
CREATE DATABASE keystone;
GRANT ALL PRIVILEGES ON keystone.* TO "keystone"@"%"IDENTIFIED BY "$MYSQL_PASS";
CREATE DATABASE cinder;
GRANT ALL PRIVILEGES ON cinder.* TO "cinder"@"%"IDENTIFIED BY "$MYSQL_PASS";
CREATE DATABASE quantum;
GRANT ALL PRIVILEGES ON quantum.* TO "quantum"@"%"IDENTIFIED BY "$MYSQL_PASS";
FLUSH PRIVILEGES;
EOF
但使用用户登陆失败
root@controller:~# mysql -h localhost -ukeystone -ppassword
ERROR 1045 (28000): Access denied for user "keystone"@"localhost" (using password: YES)
解决方法
增加普通用户后,执行:
mysql> use mysql
mysql> delete from user where user="";
mysql> flush privileges;
意思是删除匿名用户。
OK,搞定,enjoy!