RECOVER
功能
恢复之前通过 DROP 操作删除的 database、table 或者 partition。DROP 操作后只有在指定的时间内才能通过 RECOVER 恢复数据,超过这个时间无法恢复。该时间由 FE 动态参数 catalog_trash_expire_second
控制,默认 1 天。
通过 TRUNCATE TABLE 命令删除的数据无法恢复。
注意
只有拥有 default_catalog 的 CREATE DATABASE 权限才可以恢复数据库;同时需要拥有对应数据库的 CREATE TABLE 和对应表的 DROP 权限。
语法
恢复 database
RECOVER DATABASE <db_name>
恢复 table
RECOVER TABLE [db_name.]table_name;
恢复 partition
RECOVER PARTITION partition_name FROM [db_name.]table_name;
说明:
-
该操作仅能恢复之前一段时间内删除的元信息,默认为 1 天。(可通过
fe.conf
中catalog_trash_expire_second
参数配置。) -
如果删除元信息后新建了同名同类型的元信息,则之前删除的元信息不能被恢复。
示例
-
恢复名为
example_db
的 database。RECOVER DATABASE example_db;
-
恢复名为
example_tbl
的 table。RECOVER TABLE example_db.example_tbl;
-
恢复表
example_tbl
中名为p1
的 partition。RECOVER PARTITION p1 FROM example_tbl;