mysql创建新用户及新用户不能本地登陆的问题

本文介绍了在Hadoop集群中配置MySQL作为数据存储的过程,包括如何创建用户、授权以及解决常见登录问题。

最近在搭建hadoop集群,主节点上面安装的MySQL数据库,对着方面不熟悉,为hive、Ooize等服务统一使用的root账号和密码,为了安全一些库对于某些用户是不可见的,所以需要针对不同的服务设置不同的账户及可以访问的主机。

创建新用户

CREATE USER 'uname'@'hostname' IDENTIFIED BY 'password';

其中:
uname:为新创建的用户名
password:为新用户的密码
hostname:为该用户可以在哪台机器上面登陆,本地的则为localhost,如果想要任意机器远程登陆,则可以使用通配符%
用户创建好之后可以查看当前的用户有哪些

select host,user from mysql.user;


我这里面添加的用户为hive,允许登陆的主机为任意主机,所以用的是%

新用户授权

新用户现在有了,需要为用户授权

GRANT All privileges ON database.* TO 'hive'@'%' IDENTIFIED BY 'password';

database:为授权访问的库,后面跟的是可访问的表,如果是都可以访问则使用*

新用户不能本地访问

用户创建好了,也授权了,那就登陆吧

mysql -hlocalhost -uhive -pxxx
ERROR 1045 (28000): Access denied for user 'hive'@'localhost' (using password: YES)

神马??居然不能登陆,经过一番探索,原来MySQL有账户为空的账户,在本地直接输入>>mysql就能登陆,将这个空账户删了就可以登陆

mysql -uroot -padmin --切换root登陆
use mysql
delete from user where User='';  --删除账号为空的行
flush privileges;  --刷新权限
exit  --退出

现在就可以用新用户登陆了,搞定~

 
 
 
 

转载于:https://www.cnblogs.com/wxshi/p/7483121.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值