當前版本僅支援自動清理備份任務。對於自動清理場景,為了防止取消清理的任務被再次排程執行,需要先刪除清理策略,再停止正在執行的清理任務。如果僅希望取消正在執行的清理任務,可無需刪除清理策略。
刪除清理策略
注意事項及說明
使用者租戶下刪除清理策略
-
租戶管理員登入到使用者租戶下。
-
執行以下語句,刪除清理策略。
語句如下:
obclient> ALTER SYSTEM DROP DELETE BACKUP POLICY policy_name;
其中,
POLICY
引數用於指定待刪除的清理策略名,您可以透過檢視檢視
oceanbase.DBA_OB_BACKUP_DELETE_POLICY
或
sys.DBA_OB_BACKUP_DELETE_POLICY
來獲取當前租戶所設定的清理策略。
刪除當前租戶的清理策略
default
的示例如下:
obclient> ALTER SYSTEM DROP DELETE BACKUP POLICY 'default';
系統租戶下刪除清理策略
-
使用
root
使用者登入資料庫的
sys
租戶。
-
執行以下語句,刪除清理策略。
obclient> ALTER SYSTEM DROP DELETE BACKUP POLICY policy_name TENANT tenant_name;
其中:
-
POLICY
引數用於指定待刪除的清理策略名, 可以從檢視
CDB_OB_BACKUP_DELETE_POLICY
中獲取。
-
TENANT
引數用於指定使用者租戶的租戶名,在系統租戶下刪除清理策略必須指定使用者租戶名,且僅支援指定一個使用者租戶名。
系統租戶取消
MySQL
租戶的清理策略
default
的示例如下:
obclient> ALTER SYSTEM DROP DELETE BACKUP POLICY 'default' TENANT MySQL;
確認清理策略已被刪除
執行刪除清理策略操作後,您可以透過檢視檢視來確認清理策略是否已被刪除。
-
系統租戶或使用者租戶的租戶管理員登入到對應的租戶。
-
確認清理策略是否已被刪除。
根據查詢結果,當檢視中已無對應租戶的記錄時,表示該租戶的清理策略已刪除成功。
取消清理任務
使用者租戶下取消正在執行的清理任務
-
租戶管理員登入到使用者租戶下。
-
執行以下語句,停止當前租戶正在執行的清理任務。
obclient> ALTER SYSTEM CANCEL DELETE BACKUP;
系統租戶下取消正在執行的清理任務
-
使用
root
使用者登入資料庫的
sys
租戶。
-
執行以下語句,停止指定租戶正在執行的清理任務。
obclient> ALTER SYSTEM CANCEL DELETE BACKUP TENANT tenant_name_list;
其中,
TENANT
引數用於指定待取消清理任務的使用者租戶名,支援一次指定多個使用者租戶名,表示僅取消指定租戶下正在執行的清理任務。
系統租戶取消
MySQL
租戶和
Oracle
租戶上正在執行的清理任務。示例如下:
obclient> ALTER SYSTEM CANCEL DELETE BACKUP TENANT MySQL, Oracle;
如果不指定
TENANT
引數,則表示同時取消所有使用者租戶下正在執行的清理任務。
obclient> ALTER SYSTEM CANCEL DELETE BACKUP;
確認清理任務已停止
執行停止清理任務的操作後,系統租戶和使用者租戶均可以透過檢視檢視來確認清理任務是否已停止。
-
系統租戶或使用者租戶的租戶管理員登入到對應的租戶。
-
確認清理任務是否已停止。
-
檢視清理任務是否正在執行。
系統租戶透過
oceanbase.CDB_OB_BACKUP_DELETE_JOBS
檢視檢視所有租戶清理任務的執行情況;使用者租戶透過
oceanbase.DBA_OB_BACKUP_DELETE_JOBS
檢視或
sys.DBA_OB_BACKUP_DELETE_JOBS
檢視檢視當前所在租戶清理任務的執行情況。
系統租戶檢視指定租戶清理任務執行情況的示例如下:
obclient> 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: 2022-05-31 12:09:40.060284
JOB_LEVEL: USER_TENANT
START_TIMESTAMP: 2022-06-01 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> SELECT * FROM oceanbase.CDB_OB_BACKUP_DELETE_JOBS where tenant_id = 1002;
Empty set
-
檢視清理任務的歷史記錄。
系統租戶透過
oceanbase.CDB_OB_BACKUP_DELETE_JOB_HISTORY
檢視檢視所有租戶的歷史清理任務;使用者租戶透過
oceanbase.DBA_OB_BACKUP_DELETE_JOB_HISTORY
檢視或
sys.DBA_OB_BACKUP_DELETE_JOB_HISTORY
檢視檢視所在租戶的歷史清理任務。
系統租戶檢視指定租戶清理任務的歷史記錄的示例如下:
obclient> SELECT * FROM oceanbase._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: 2022-05-31 12:09:40.060284
JOB_LEVEL: USER_TENANT
START_TIMESTAMP: 2022-06-01 12:09:53.389512
END_TIMESTAMP: 2022-06-01 12:10:36.829576
STATUS: CANCELED
TASK_COUNT: 2
SUCCESS_TASK_COUNT: 2
RESULT: 0
COMMENT:
1 row in set
如果
STATUS
對應的值為
COMPLETED
或
FAILED
或
CANCELED
,則表示清理任務已停止。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026124/viewspace-2932886/,如需轉載,請註明出處,否則將追究法律責任。