起因
公司用的AWS EMR上的hive,突然不能删除表了。
经过
分析来看,估计是元数据那块出了问题。从元数据入手,元数据存在mysql的hive数据库中
直接使用hive配置文件hive-site.xml中的用户名密码访问mysql数据库
mysql -h ip -uhive -p
ERROR 1045 (28000): Access denied for user 'hive'@'ip' (using password: YES)
使用 root用户登录mysql,进入mysql数据库,查询 user表中的host,user,和password与hive-site.xml中的用户名密码对比
select host,user,password,password('pwd in hive-site.xml') from user;
password('')函数能获取到字符串转成mysql密码加密后的字符串,进行比对。
(他喵的谁把密码改了吗?)发现密码不一致
解决
将user表hive用户的密码更新成一致
重启mysql 服务
service mysqld restart