hive 误删表恢复
hive表分内部表和外部表,误删(drop)后,其恢复逻辑是不同的
内部表
内部表删除以后表结构和表数据都会删除,如果hdfs没有开启“回收站”功能,那数据是就是直接删除了;如果开启了“回收站”,表数据就在‘回收站’里,可以通过下面命令一级一级的找到
hdfs dfs -ls /user/XX/.Trash
找到以后,恢复方法是:1)重建表结构;2)把‘回收站’里的数据 mv 到新的目录;3)命令:MSCK REPAIR TABLE XX 修复数据不一致
外部表
外部表删除后只删除了表结构,表数据还在建表时指定的位置。
恢复方法是:重建表结构时把位置指向原表的数据位置
参考
https://blog.csdn.net/qq_44696532/article/details/127841934