我试着放弃一张HIVE表。屏幕挂起。我尝试了HIVE CLI和beeline。表格都没有被删除,数据也没有插入到表格中。需要帮助!
答案 0 :(得分:9)
实际上该表已被某些查询锁定。解锁桌子后,我现在可以放下桌子了。
=>查询以解锁表格
unlock table <tablename>
=&gt;我们可以找到在Hive CLI / Beeline中锁定的表格:
show locks extended;
答案 1 :(得分:1)
我遇到了类似的问题,但是我什至无法删除包含该表的蜂巢数据库。
我不得不从metastoredb相应记录中手动删除。
在这样做之前,当然要先做mysqldump以防万一:)
在表TBLS记录中,该记录对应于该表。 记录属性SD_ID,VIEW_EXPANDED_TEXT,VIEW_ORIGINAL_TEXT为空。
要找到它:
SELECT DB.DB_ID,
DB.NAME AS DB_NAME,
TB.SD_ID,
TB.TBL_ID,
TB.TBL_NAME,
SD.SD_ID,
SD.INPUT_FORMAT,
CD.*
FROM TBLS AS TB
left JOIN DBS AS DB ON(DB.DB_ID = TB.DB_ID)
left JOIN SDS AS SD ON(TB.SD_ID = SD.SD_ID)
left JOIN COLUMNS_V2 AS CD ON(SD.CD_ID = CD.CD_ID)
WHERE
TB.TBL_NAME='your_name';
然后,我不得不在另外两个表中删除该记录的所有FK:
delete from TBL_COL_PRIVS where TBL_ID=xxxx ;
delete from TBL_PRIVS where TBL_ID=xxxx ;
delete from TBLS where TBL_ID=xxxx ;