访问被拒绝了,然后我试着直接用keystone访问数据库,发现也不行
由此想到可能是我的密码设置错了,然后利用root用户登陆到mysql数据库中使用如下命令: select host,user from mysql.user;
找出数据库中的所有用户,情况如下:
果然,虽然密码那一列被加密了,但还是能看出keystone设置的密码和root设置的密码是不一样的,因为按照正常情况,我是按照他们的密码相同访问的,所以要把keystone的密码改过来。
使用如下的命令: grant all privileges on keystone.* to 'keystone'@'%' identified by '这里写你的密码';
利用相同的方法把nova和glance的密码也都改过,改好后再次查看:
利用下面的命令刷新一下权限列表: flush privileges;
然后service mysql restart重启数据库服务,再次执行命令keystone-manage db_sync,没有任何的输出,说明执行正确了。
数据库新建,查看和修改用户的方法
创建用户的命令:
mysql> CREATE USER yy IDENTIFIED BY '123';1
yy表示你要建立的用户名,后面的123表示密码,上面建立的用户可以在任何地方登陆。
如果要限制在固定地址登陆,比如localhost 登陆:
mysql> CREATE USER yy@localhost IDENTIFIED BY '123';1
授权:
mysql> GRANT ALL PRIVILEGES ON *.* TO user;@localhost1
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";1
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";1
格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”
修改密码:
mysql> grant all privileges on pureftpd.* to koko@localhost identified by 'mimi'; 1
刷新:
mysql> flush privileges;1
查看用户信息:
mysql> select host,user from mysql.user;