邏輯刪除表(回收站模式刪除表)
在現有的SQL 前綴 Hint 語法中,新增了一個選項字段,用于在執行DROP TABLE時指定是否啟用回收站模式刪除表的功能,字段名為recycleBinMode。
recycleBinMode字段說明如下:
默認值: true
說明:可選,此選項用于控制是否啟用回收站模式進行刪除。如果未指定該選項,則默認值為true,即啟用回收站模式。
用法示例:
/* !HINT({"recycleBinMode":false, "asyncDdlMode": false, "taskId" : "9aa71832-a945-11ef-80aa-080027252449"}) */recycleBinMode: 可選,設置為false,表示不啟用回收站模式進行刪除。
asyncDdlMode: 可選,表示是否異步執行DDL操作。
taskId: 可選,異步執行時為當前操作指定一個唯一的任務ID。
回收站查看列表
udal recycle_bin show table 命令可以查看回收站中的記錄,支持多種查詢條件,以便用戶根據需要篩選回收對象。
語法:
udal recycle_bin show table [where
[id = ?]
[[and] schema_id = ?]
[[and] {delete_status = ? | delete_status != ?}]
[[and] schema_name like ?]
[[and] {obj_name like ? | obj_name = ?}]
[[and] gmt_create >= ?]
[[and] gmt_create <= ?]
]
[order by gmt_create [desc]]
[LIMIT [offset,] row_count]參數說明:
where: 可選條件,用于篩選記錄。
id = ?: 根據主鍵ID篩選。schema_id = ?: 根據schema ID篩選。delete_status = ?或delete_status != ?: 根據刪除狀態篩選。0:表示未刪除。
1:表示刪除中。
schema_name like ?: 根據 schema 名稱進行模糊查詢。obj_name like ?: 根據對象名稱進行模糊查詢。obj_name = ?:根據對象名稱進行查詢。gmt_create >= ?: 根據創建時間篩選(大于等于)。gmt_create <= ?: 根據創建時間篩選(小于等于)。
order by gmt_create [desc]: 可選,按創建時間排序,
desc表示降序。LIMIT [offset,] row_count: 可選,限制返回的記錄數量,支持分頁。
清理回收站中的表
udal recycle_bin purge table 命令用于清理回收站中的表記錄。用戶可以選擇僅清理回收站記錄,或同時清理物理庫中的表。
語法:
-- 清理回收站中的表(不清理物理庫表)
udal recycle_bin purge table where id = ?;
-- 清理回收站中的表(同時清理物理庫表)
udal recycle_bin purge table where id = ? [with physical delete];參數說明:
id = ?: 必填參數,指定要清理的回收站記錄的主鍵ID。
with physical delete: 可選參數,指定改參數時清理回收站的記錄時同時清理物理庫中的表。
恢復回收站的表
udal recycle_bin restore 命令用于從回收站中恢復被刪除的表。
語法:
udal recycle_bin restore table where id = ?;參數說明:
id = ?: 必填參數,指定要恢復的回收站記錄的主鍵 ID。該ID對應于回收站中被刪除表的記錄。
注意
在執行恢復操作之前,請確認要恢復的表及其ID,以確保恢復正確的對象。
查看回收站策略
使用 udal recycle_bin show config 命令可以查看集群的回收站配置策略。該命令返回結果集,包含一條回收站策略的記錄。
語法:
udal recycle_bin show config;返回結果的主要字段說明:
retain_number: 表示保留的時間數量。
默認值為15,表示最多保留15個時間單位。
retain_type: 表示保留的時間單位。
0 (默認值):表示按天計算。
1:表示按月計算。
delete_table: 表示是否允許刪除底層物理表。
0(默認值):表示不刪除。
1:表示刪除。
delete_time: 表示刪除操作的執行時間窗口。
0(默認值):表示執行時間窗口為(00:00:00, 23:59:59)。
1:表示執行時間窗口為(00:00:00, 06:00:00)。
2:表示執行時間窗口為(06:00:00, 12:00:00)。
3:表示執行時間窗口為(12:00:00, 18:00:00)。
4:表示執行時間窗口為(18:00:00, 23:59:59)。
設置回收站策略
使用 udal recycle_bin set config 命令可以設置集群的回收站配置策略。通過該命令,用戶可以調整回收站的保留時間數量、保留時間單位、刪除表的權限以及刪除時間窗口等參數。
語法:
udal recycle_bin set config assignment_list
assignment:
col_name = value
assignment_list:
assignment [, assignment] ...
-- 其中col_name可以是retain_number、retain_type、delete_table、delete_time參數說明:
retain_number: 表示保留的時間數量。
默認值為15,表示最多保留15個時間單位。
retain_type: 表示保留的時間單位。
0 (默認值):表示按天計算。
1:表示按月計算。
delete_table: 表示是否允許刪除底層物理表。
0(默認值):表示不刪除。
1:表示刪除。
delete_time: 表示刪除操作的執行時間窗口。
0(默認值):表示執行時間窗口為(00:00:00, 23:59:59)。
1:表示執行時間窗口為(00:00:00, 06:00:00)。
2:表示執行時間窗口為(06:00:00, 12:00:00)。
3:表示執行時間窗口為(12:00:00, 18:00:00)。
4:表示執行時間窗口為(18:00:00, 23:59:59)。