obv4单表恢复报错:ERROR 4179 (HY000): recover table when recover table job exists is not allowed

【 使用环境 】测试环境
【 OB or 其他组件 】OB
【 使用版本 】OBV4.2.1.1
【问题描述】
操作过程:

  1. 对oraclet租户做了全量备份
    oraclet租户中我建了一个user TEST001,TEST001中建了一张表TEST1

发起日志归档
ALTER SYSTEM SET LOG_ARCHIVE_DEST=‘LOCATION=file:///opt/log/oraclet’ TENANT = oraclet;
ALTER SYSTEM ARCHIVELOG TENANT = oraclet;
等日志归档变为DOING发起全量备份
ALTER SYSTEM SET DATA_BACKUP_DEST= ‘file:///opt/data/oraclet’ TENANT = oraclet;
ALTER SYSTEM BACKUP TENANT=oraclet;

从OCP上能看到备份是成功的:

  1. 发起单表恢复
    ALTER SYSTEM RECOVER TABLE TEST001.TEST1 TO TENANT oraclet_restore FROM ‘file:///opt/data/oraclet,file:///opt/log/oraclet’ WITH ‘pool_list=mysqlrestore_pool’ DESCRIPTION ‘oracle table restore’;
    报错如下:

之前也做过备份,单表恢复发起成功过,这次备份后,不知道为什么单表发不起来。

1 个赞

这个报错不是提示已经有一个恢复任务了吗。。是不是之前的恢复任务没有正常结束,可以查下CDB_OB_RESTORE_PROGRESS表,可以参考下面两个文档看看 :joy:

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001050226

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001050217

1 个赞

提示的比较明确了,有其他的恢复任务在运行。

1 个赞

那应该就是之前我提的这个问题导致的,单表恢复发起之后取消不掉,老师能帮忙看一下这个问题吗
obv4单表恢复取消没反应 - 社区问答- OceanBase社区-分布式数据库

那应该就是之前我提的这个问题导致的,单表恢复发起之后取消不掉,执行取消单表恢复命令之后,oceanbase.CDB_OB_RECOVER_TABLE_JOBS中一直有一条记录就是消不掉
obv4单表恢复取消没反应 - 社区问答- OceanBase社区-分布式数据库

试下 ALTER SYSTEM CANCEL RESTORE tenant_name; 呢。。不知道用这个命令表级恢复能不能取消 :joy:

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001050220

不好意思。。原来下面有取消按表恢复的文档,用这个命令就行了
ALTER SYSTEM CANCEL RECOVER TABLE dest_tenant_name;

https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001050215