首批通过分布式安全可靠测评,为关键业务系统打造
查看表级恢复结果
更新时间:2026-04-07 20:57:20
表级恢复任务结束后,您可以通过视图查看表级恢复的结果。
步骤一:查看表级恢复任务的整体执行结果
使用
root用户登录表待恢复的目标租户所在集群的sys租户。执行以下命令,查看整个表级恢复任务的结果及辅助租户恢复的结果。
查看表级恢复整个任务的结果。
obclient> SELECT * FROM oceanbase.CDB_OB_RECOVER_TABLE_JOB_HISTORY WHERE TENANT_ID = tenant_id\GCDB_OB_RECOVER_TABLE_JOB_HISTORY视图中各字段基本与CDB_OB_RECOVER_TABLE_JOBS相对应。其中,字段COMMENT用于记录任务失败时的相关错误信息。有关视图CDB_OB_RECOVER_TABLE_JOB_HISTORY中字段的详细说明,参见 物理恢复相关视图介绍。tenant_id需要替换为实际的租户 ID,查询结果的示例如下:示例 1:所有目标表全部恢复成功
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 2 INITIATOR_TENANT_ID: 1 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:42:19.274226 FINISH_TIMESTAMP: 2025-09-11 11:43:35.495161 STATUS: COMPLETED AUX_TENANT_NAME: AUX_RECOVER$1692106995896258 TARGET_TENANT_NAME: backup_tenant IMPORT_ALL: 0 DB_LIST: `DB` TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` RESTORE_SCN: 1692104831498747191 RESTORE_SCN_DISPLAY: 2025-09-11 11:40:15.000000 RESTORE_OPTION: pool_list=small_pool_0&primary_zone=z1 BACKUP_DEST: file:///data2/nfs/ob_backup_oracle_tenant/archive,file:///data2/nfs/ob_backup_oracle_tenant/data BACKUP_SET_LIST: file:///data2/nfs/ob_backup_oracle_tenant/data/backup_set_1_full BACKUP_PIECE_LIST: file:///data2/nfs/ob_backup_oracle_tenant/archive/piece_d1001r1p1 BACKUP_PASSWD: NULL EXTERNAL_KMS_INFO: NULL REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: RESULT: SUCCESS COMMENT: import succeed table count: 3, failed table count: 0 DESCRIPTION: NULL 1 row in set示例 2:部分目标表恢复成功,即部分表恢复成功,部分表恢复失败
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 2 INITIATOR_TENANT_ID: 1 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:42:19.274226 FINISH_TIMESTAMP: 2025-09-11 11:43:35.495161 STATUS: COMPLETED AUX_TENANT_NAME: AUX_RECOVER$1692106995896258 TARGET_TENANT_NAME: backup_tenant IMPORT_ALL: 0 DB_LIST: `DB` TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` RESTORE_SCN: 1692104831498747191 RESTORE_SCN_DISPLAY: 2025-09-11 11:40:15.000000 RESTORE_OPTION: pool_list=small_pool_0&primary_zone=z1 BACKUP_DEST: file:///data2/nfs/ob_backup_oracle_tenant/archive,file:///data2/nfs/ob_backup_oracle_tenant/data BACKUP_SET_LIST: file:///data2/nfs/ob_backup_oracle_tenant/data/backup_set_1_full BACKUP_PIECE_LIST: file:///data2/nfs/ob_backup_oracle_tenant/archive/piece_d1001r1p1 BACKUP_PASSWD: NULL EXTERNAL_KMS_INFO: NULL REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: RESULT: PARTIAL_SUCCESS COMMENT: import succeed table count: 2, failed table count: 1 DESCRIPTION: NULL 1 row in set示例 3:用户中途取消表级恢复任务,导致部分目标表恢复成功
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 2 INITIATOR_TENANT_ID: 1 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:42:19.274226 FINISH_TIMESTAMP: 2025-09-11 11:43:35.495161 STATUS: COMPLETED AUX_TENANT_NAME: AUX_RECOVER$1692106995896258 TARGET_TENANT_NAME: backup_tenant IMPORT_ALL: 0 DB_LIST: `DB` TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` RESTORE_SCN: 1692104831498747191 RESTORE_SCN_DISPLAY: 2025-09-11 11:40:15.000000 RESTORE_OPTION: pool_list=small_pool_0&primary_zone=z1 BACKUP_DEST: file:///data2/nfs/ob_backup_oracle_tenant/archive,file:///data2/nfs/ob_backup_oracle_tenant/data BACKUP_SET_LIST: file:///data2/nfs/ob_backup_oracle_tenant/data/backup_set_1_full BACKUP_PIECE_LIST: file:///data2/nfs/ob_backup_oracle_tenant/archive/piece_d1001r1p1 BACKUP_PASSWD: NULL EXTERNAL_KMS_INFO: NULL REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: RESULT: PARTIAL_SUCCESS COMMENT: comment: OB_CANCEL(-4072), addr:11.xxx.xxx.xxx:18000, trace_id:Y4********-**********-0-0 DESCRIPTION: NULL 1 row in set示例 4:所有目标表全部恢复失败
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 2 INITIATOR_TENANT_ID: 1 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:42:19.274226 FINISH_TIMESTAMP: 2025-09-11 11:43:35.495161 STATUS: COMPLETED AUX_TENANT_NAME: AUX_RECOVER$1692106995896258 TARGET_TENANT_NAME: backup_tenant IMPORT_ALL: 0 DB_LIST: `DB` TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` RESTORE_SCN: 1692104831498747191 RESTORE_SCN_DISPLAY: 2025-09-11 11:40:15.000000 RESTORE_OPTION: pool_list=small_pool_0&primary_zone=z1 BACKUP_DEST: file:///data2/nfs/ob_backup_oracle_tenant/archive,file:///data2/nfs/ob_backup_oracle_tenant/data BACKUP_SET_LIST: file:///data2/nfs/ob_backup_oracle_tenant/data/backup_set_1_full BACKUP_PIECE_LIST: file:///data2/nfs/ob_backup_oracle_tenant/archive/piece_d1001r1p1 BACKUP_PASSWD: NULL EXTERNAL_KMS_INFO: NULL REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: RESULT: FAILED COMMENT: import succeed table count: 0, failed table count: 3 DESCRIPTION: NULL 1 row in set
查看辅助租户恢复任务的结果。
obclient> SELECT * FROM oceanbase.CDB_OB_RESTORE_HISTORY\G辅助租户的恢复与租户级的物理恢复过程一致,查看物理恢复结果的详细介绍,参见 查看物理恢复结果。
步骤二:查看跨租户导表任务的整体执行结果
根据表级恢复任务的整体执行情况,可以进一步查看跨租户导表任务的整体执行结果。
使用
root用户登录表待恢复的目标租户所在集群的sys租户。执行以下命令,查看目标租户跨租户导入任务的结果。
obclient> SELECT * FROM oceanbase.CDB_OB_IMPORT_TABLE_JOB_HISTORY WHERE TENANT_ID = tenant_id AND INITIATOR_JOB_ID = recover_table_job_id\G其中,
tenant_id需要替换为实际的租户 ID,recover_table_job_id需要替换为 步骤一:查看表级恢复任务的整体执行结果 中查询到的表级恢复任务的JOB_ID。CDB_OB_IMPORT_TABLE_JOB_HISTORY视图中各字段基本与CDB_OB_IMPORT_TABLE_JOBS相对应。其中,字段COMMENT用于记录任务失败时的相关错误信息。有关视图CDB_OB_IMPORT_TABLE_JOB_HISTORY中字段的详细说明,参见 物理恢复相关视图介绍。查询结果的示例如下:
示例 1:所有目标表全部恢复成功
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 3 INITIATOR_TENANT_ID: 1002 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:43:15.204649 FINISH_TIMESTAMP: 2025-09-11 11:43:25.453894 SRC_TENANT_NAME: AUX_RECOVER$1692179849034890 SRC_TENANT_ID: 1004 STATUS: IMPORT_FINISH IMPORT_ALL: 0 DB_LIST: TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: TOTAL_TABLE_COUNT: 3 FINISHED_TABLE_COUNT: 3 FAILED_TABLE_COUNT: 0 RESULT: SUCCESS COMMENT: import succeed table count: 3, failed table count: 0 1 row in set示例 2:部分目标表恢复成功,即部分表恢复成功,部分表恢复失败
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 3 INITIATOR_TENANT_ID: 1002 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:43:15.204649 FINISH_TIMESTAMP: 2025-09-11 11:43:25.453894 SRC_TENANT_NAME: AUX_RECOVER$1692179849034890 SRC_TENANT_ID: 1004 STATUS: IMPORT_FINISH IMPORT_ALL: 0 DB_LIST: TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: TOTAL_TABLE_COUNT: 3 FINISHED_TABLE_COUNT: 2 FAILED_TABLE_COUNT: 1 RESULT: PARTIAL_SUCCESS COMMENT: import succeed table count: 2, failed table count: 1 1 row in set示例 3:用户中途取消表级恢复任务,导致部分目标表恢复成功
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 3 INITIATOR_TENANT_ID: 1002 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:43:15.204649 FINISH_TIMESTAMP: 2025-09-11 11:43:25.453894 SRC_TENANT_NAME: AUX_RECOVER$1692179849034890 SRC_TENANT_ID: 1004 STATUS: IMPORT_FINISH IMPORT_ALL: 0 DB_LIST: TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: TOTAL_TABLE_COUNT: 3 FINISHED_TABLE_COUNT: 2 FAILED_TABLE_COUNT: 1 RESULT: PARTIAL_SUCCESS COMMENT: comment: OB_CANCEL(-4072), addr:11.xxx.xxx.xxx:18000, trace_id:Y4********-**********-0-0 1 row in set示例 4:所有目标表全部恢复失败
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 3 INITIATOR_TENANT_ID: 1002 INITIATOR_JOB_ID: 2 START_TIMESTAMP: 2025-09-11 11:43:15.204649 FINISH_TIMESTAMP: 2025-09-11 11:43:25.453894 SRC_TENANT_NAME: AUX_RECOVER$1692179849034890 SRC_TENANT_ID: 1004 STATUS: IMPORT_FINISH IMPORT_ALL: 0 DB_LIST: TABLE_LIST: `TEST`.`T1`,`TEST`.`T2`,`TEST`.`T3` REMAP_DB_LIST: REMAP_TABLE_LIST: `TEST`.`T1`:`RECOVER_TEST`.`T1`,`TEST`.`T2`:`RECOVER_TEST`.`T2`,`TEST`.`T3`:`RECOVER_TEST`.`T3` REMAP_TABLEGROUP_LIST: REMAP_TABLESPACE_LIST: TOTAL_TABLE_COUNT: 3 FINISHED_TABLE_COUNT: 0 FAILED_TABLE_COUNT: 3 RESULT: FAILED COMMENT: import succeed table count: 0, failed table count: 3 1 row in set
步骤三:查看每张表的执行结果
根据跨租户导表任务的执行情况,如果发现有表未导入成功,可以进一步查看每张表的执行结果。
使用
root用户登录表待恢复的目标租户所在集群的sys租户。执行以下命令,查看每张表导入的结果。
obclient> SELECT * FROM oceanbase.CDB_OB_IMPORT_TABLE_TASK_HISTORY WHERE TENANT_ID = tenant_id AND JOB_ID = import_table_job_id\G其中,
tenant_id需要替换为实际的租户 ID,import_table_job_id需要替换为 步骤二:查看跨租户导表任务的整体执行结果 中查询到的跨租户导表任务的JOB_ID。CDB_OB_IMPORT_TABLE_TASK_HISTORY视图中各字段基本与CDB_OB_IMPORT_TABLE_TASKS相对应。其中,COMMENT字段用于记录任务失败时的相关错误信息。有关视图CDB_OB_IMPORT_TABLE_TASK_HISTORY中字段的详细说明,参见 物理恢复相关视图介绍。查询结果的示例如下:
示例 1:目标表恢复成功,且目标表关联的 Schema 全部恢复成功
*************************** 1. row *************************** TENANT_ID: 1002 TASK_ID: 1047 JOB_ID: 3 SRC_TENANT_ID: 1004 SRC_TABLESPACE: NULL SRC_TABLEGROUP: NULL SRC_DATABASE: TEST SRC_TABLE: T1 SRC_PARTITION: NULL TARGET_TABLESPACE: NULL TARGET_TABLEGROUP: NULL TARGET_DATABASE: RECOVER_TEST TARGET_TABLE: T1 TABLE_COLUMN: 7 STATUS: FINISH START_TIMESTAMP: 2025-09-11 11:43:15.270078 COMPLETION_TIMESTAMP: 2025-09-11 11:43:25.422834 CUMULATIVE_TS: -1 TOTAL_INDEX_COUNT: 2 IMPORTED_INDEX_COUNT: 2 FAILED_INDEX_COUNT: 0 TOTAL_CONSTRAINT_COUNT: 1 IMPORTED_CONSTRAINT_COUNT: 1 FAILED_CONSTRAINT_COUNT: 0 TOTAL_REF_CONSTRAINT_COUNT: 0 IMPORTED_REF_CONSTRAINT_COUNT: 0 FAILED_REF_CONSTRAINT_COUNT: 0 RESULT: SUCCEESS COMMENT: 1 row in set示例 2:目标表恢复成功,同时恢复过程中用户对恢复完成的目标表进行了删除
*************************** 1. row *************************** TENANT_ID: 1002 TASK_ID: 1047 JOB_ID: 3 SRC_TENANT_ID: 1004 SRC_TABLESPACE: NULL SRC_TABLEGROUP: NULL SRC_DATABASE: TEST SRC_TABLE: T1 SRC_PARTITION: NULL TARGET_TABLESPACE: NULL TARGET_TABLEGROUP: NULL TARGET_DATABASE: RECOVER_TEST TARGET_TABLE: T1 TABLE_COLUMN: 7 STATUS: FINISH START_TIMESTAMP: 2025-09-11 11:43:15.270078 COMPLETION_TIMESTAMP: 2025-09-11 11:43:25.422834 CUMULATIVE_TS: -1 TOTAL_INDEX_COUNT: 2 IMPORTED_INDEX_COUNT: 2 FAILED_INDEX_COUNT: 0 TOTAL_CONSTRAINT_COUNT: 1 IMPORTED_CONSTRAINT_COUNT: 1 FAILED_CONSTRAINT_COUNT: 0 TOTAL_REF_CONSTRAINT_COUNT: 0 IMPORTED_REF_CONSTRAINT_COUNT: 0 FAILED_REF_CONSTRAINT_COUNT: 0 RESULT: SUCCEESS COMMENT: table type_tbl has been deleted by user 1 row in set示例 3:目标表恢复成功,同时目标表关联的 Schema 部分恢复失败
一般来说,表关联的 Schema 包括索引表、约束、外键等恢复失败不会影响主表任务的恢复。例如,以下返回结果中,
FAILED_INDEX_COUNT为1表示目标表关联的索引有一个恢复失败,但是主表的恢复任务仍然是成功的。***************************** 1. row *************************** TENANT_ID: 1002 TASK_ID: 1047 JOB_ID: 3 SRC_TENANT_ID: 1004 SRC_TABLESPACE: NULL SRC_TABLEGROUP: NULL SRC_DATABASE: TEST SRC_TABLE: T1 SRC_PARTITION: NULL TARGET_TABLESPACE: NULL TARGET_TABLEGROUP: NULL TARGET_DATABASE: TEST TARGET_TABLE: T1 TABLE_COLUMN: 2 STATUS: FINISH START_TIMESTAMP: 2025-09-11 11:43:15.270078 COMPLETION_TIMESTAMP: 2025-09-11 11:43:25.422834 CUMULATIVE_TS: -1 TOTAL_INDEX_COUNT: 2 IMPORTED_INDEX_COUNT: 1 FAILED_INDEX_COUNT: 1 TOTAL_CONSTRAINT_COUNT: 2 IMPORTED_CONSTRAINT_COUNT: 2 FAILED_CONSTRAINT_COUNT: 0 TOTAL_REF_CONSTRAINT_COUNT: 0 IMPORTED_REF_CONSTRAINT_COUNT: 0 FAILED_REF_CONSTRAINT_COUNT: 0 RESULT: SUCCEESS COMMENT: 1 row in set特别的,由于 Oracle 模式下,要求表的约束名称在一个用户内必须唯一,如果表命名的主键约束因约束名称冲突而导致恢复失败,将会影响主表的恢复,进而导致整个表恢复任务失败。例如,以下返回结果中,主键约束恢复失败,导致主表的恢复任务失败。
***************************** 1. row *************************** TENANT_ID: 1002 TASK_ID: 1047 JOB_ID: 3 SRC_TENANT_ID: 1004 SRC_TABLESPACE: NULL SRC_TABLEGROUP: NULL SRC_DATABASE: TEST SRC_TABLE: T1 SRC_PARTITION: NULL TARGET_TABLESPACE: NULL TARGET_TABLEGROUP: NULL TARGET_DATABASE: TEST TARGET_TABLE: T1 TABLE_COLUMN: 2 STATUS: FINISH START_TIMESTAMP: 2025-09-11 11:43:15.270078 COMPLETION_TIMESTAMP: 2025-09-11 11:43:25.422834 CUMULATIVE_TS: -1 TOTAL_INDEX_COUNT: 0 IMPORTED_INDEX_COUNT: 0 FAILED_INDEX_COUNT: 0 TOTAL_CONSTRAINT_COUNT: 2 IMPORTED_CONSTRAINT_COUNT: 0 FAILED_CONSTRAINT_COUNT: 2 TOTAL_REF_CONSTRAINT_COUNT: 0 IMPORTED_REF_CONSTRAINT_COUNT: 0 FAILED_REF_CONSTRAINT_COUNT: 0 RESULT: FAILED COMMENT: OBE-02264: name already used by an existing constraint 1 row in set