hive锁 导致 hive select、alter、sqoop表异常

环境:CDH6.2.1,Java8

HDFS 3.0.0+cdh6.2.1
Hive 2.1.1+cdh6.2.1
ZooKeeper 3.4.5+cdh6.2.1
Sqoop 1.4.7+cdh6.2.1
Flume NG 1.9.0+cdh6.2.1

问题:假期服务器突然断电,导致正在查询的hive进程异常,重启系统之后,发现hive表不能执行,select、alter都不行,不过是部分表这样。

解决:查看日志并在网上查询后,发现是hive锁的问题,不过办法都试过了,没有用,最后发现好多这种解决办法:

在Hive数据库的元数据存储mysql数据库的hive元数据hive表中执行 

delete from HIVE_LOCKS where HL_DB = 'cdn' and HL_TABLE = 'cdn_log';

比如:https://blog.csdn.net/w635614017/article/details/89095174 最后

select * from HIVE_LOCKS;

delete from HIVE_LOCKS where HL_DB = 'hive' and HL_TABLE = 'monitor';

 

hive查询show locks;找出异常的表信息,挨个删除就好。

做完之后,发现查询正常了。

上一篇:Zookeeper:五、实现分布式锁


下一篇:MySQL 性能优化-数据库死锁监控