首批通过分布式安全可靠测评,为关键业务系统打造
取消清理任务
更新时间:2026-05-24 10:43:48
当前版本支持备份的自动清理和手动清理。在取消清理任务时:
- 对于自动清理场景,为了防止取消清理的任务被再次调度执行,需要先删除清理策略,再停止正在执行的清理任务。如果仅希望取消正在执行的清理任务,可无需删除清理策略。
- 对于手动清理场景,直接取消清理任务即可。
系统租户下取消正在执行的清理任务
使用
root用户登录集群的sys租户。连接示例如下,连接数据库时请以实际环境为准。
obclient -h10.xx.xx.xx -P2883 -uroot@sys#obdemo -p***** -A执行以下语句,停止指定租户正在执行的清理任务。
obclient [(none)]> ALTER SYSTEM CANCEL DELETE BACKUP TENANT tenant_name_list;其中,
TENANT参数用于指定待取消清理任务的用户租户名,支持一次指定多个用户租户名,表示仅取消指定租户下正在执行的清理任务。系统租户取消
MySQL租户和Oracle租户上正在执行的清理任务。示例如下:obclient [(none)]> ALTER SYSTEM CANCEL DELETE BACKUP TENANT MySQL, Oracle;如果不指定
TENANT参数,则表示同时取消所有用户租户下正在执行的清理任务。obclient [(none)]> ALTER SYSTEM CANCEL DELETE BACKUP;确认清理任务是否停止。
查看清理任务是否正在执行。
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_DELETE_JOBS WHERE tenant_id = 1002\G查询结果如下:
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 1 INCARNATION: 1 INITIATOR_TENANT_ID: 1002 INITIATOR_JOB_ID: 7 EXECUTOR_TENANT_ID: 1002 TYPE: DELETE OBSOLETE BACKUP PARAMETER: expired_time:2025-09-12 12:09:40.060284 JOB_LEVEL: USER_TENANT START_TIMESTAMP: 2025-09-13 12:09:53.389512 END_TIMESTAMP: STATUS: CANCELING TASK_COUNT: 2 SUCCESS_TASK_COUNT: 1 RESULT: 0 COMMENT: 1 row in set根据查询结果,如果
STATUS对应的值为INIT或DOING或CANCELING,则表示清理任务还未执行结束。如果查询结果为空,则表示上述视图中查询不到租户正在执行的清理任务,可以执行下一步,查看清理任务的历史记录来确认清理任务执行的结果。
查看清理任务的历史记录。
obclient(root@sys)[(none)]> SELECT * FROM oceanbase.CDB_OB_BACKUP_DELETE_JOB_HISTORY WHERE tenant_id = 1002\G查询结果如下:
*************************** 1. row *************************** TENANT_ID: 1002 JOB_ID: 1 INCARNATION: 1 INITIATOR_TENANT_ID: 1002 INITIATOR_JOB_ID: 7 EXECUTOR_TENANT_ID: 1002 TYPE: DELETE OBSOLETE BACKUP PARAMETER: expired_time:2025-09-12 12:09:40.060284 JOB_LEVEL: USER_TENANT START_TIMESTAMP: 2025-09-13 12:09:53.389512 END_TIMESTAMP: 2025-09-13 12:10:36.829576 STATUS: CANCELED TASK_COUNT: 2 SUCCESS_TASK_COUNT: 2 RESULT: 0 COMMENT: 1 row in set如果
STATUS对应的值为COMPLETED或FAILED或CANCELED,则表示清理任务已停止。
用户租户下取消正在执行的清理任务
用户租户的租户管理员登录到数据库。
说明
MySQL 租户的管理员用户为
root用户,Oracle 租户的管理员用户为SYS用户。连接示例如下,连接数据库时请以实际环境为准。
obclient -h10.xx.xx.xx -P2883 -uroot@mysql001#obdemo -p***** -A执行以下语句,停止当前租户正在执行的清理任务。
obclient> ALTER SYSTEM CANCEL DELETE BACKUP;确认清理任务是否停止。
查看清理任务是否正在执行。
MySQL 模式Oracle 模式MySQL 模式下的查询示例如下:
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_DELETE_JOBS\GOracle 模式下的查询示例如下:
obclient(SYS@oracle001)[SYS]> SELECT * FROM SYS.DBA_OB_BACKUP_DELETE_JOBS\G根据查询结果,如果
STATUS对应的值为INIT或DOING或CANCELING,则表示清理任务还未执行结束。如果查询结果为空,则表示上述视图中查询不到租户正在执行的清理任务,可以执行下一步,查看清理任务的历史记录来确认清理任务执行的结果。
查看清理任务的历史记录。
MySQL 模式Oracle 模式MySQL 模式下的查询示例如下:
obclient(root@mysql001)[(none)]> SELECT * FROM oceanbase.DBA_OB_BACKUP_DELETE_JOB_HISTORY\GOracle 模式下的查询示例如下:
obclient(SYS@oracle001)[SYS]> SELECT * FROM SYS.DBA_OB_BACKUP_DELETE_JOB_HISTORY\G查询结果中,如果
STATUS对应的值为COMPLETED或FAILED或CANCELED,则表示清理任务已停止。