全部產品
Search
文件中心

ApsaraDB for OceanBase (Deprecated):管理分區計劃

更新時間:Jan 05, 2026

本文檔旨在介紹如何在 ODC 上使用分區計劃,包括對建立和刪除的表分區進行自動管理。

背景資訊

分區計劃是專門針對 Range 分區的擴充功能,ODC 支援依據使用者佈建的分區策略對 Range 分區表進行自動管理,使用者無需手動建立新分區,以方便維護 Range 分區表。

  • Range 分區:Range 分區是最常見的分區類型,通常與日期一起使用。在進行 Range 分區時,資料庫根據分區鍵的值範圍將行映射到分區。詳情請參見 設定分區規則分區類型

  • 分區計劃:分區計劃是專門針對 Range 分區的擴充功能,ODC 支援依據使用者佈建的分區策略對 Range 分區表進行自動管理,使用者無需手動建立新分區,以方便維護 Range 分區表。

  • 建立策略:ODC 支援依據使用者佈建的分區細則對錶進行自動分區。建立分區策略方式包括順序遞增和自訂。

    • 順序遞增:建立分區策略方式,僅適用於時間、數字和字元欄位類型。

      image

    • 自訂:建立分區策略方式,所有欄位類型支援通過自訂 SQL 運算式建立分區策略。

      image

  • 刪除策略:根據設定的分區保留數量保留最新的分區並刪除多餘的分區。

分區計劃執行流程

image

  1. 對錶設定建立分區策略/刪除分區策略。

  2. 指定策略執行循環。

  3. 審批任務流程。

  4. 執行分區計劃。

注意事項

  • 僅支援 OceanBase MySQL 和 OceanBase Oracle 資料來源。

  • 僅支援 Range 分區表。

  • Range 分區表中的最後一個分區上限值為 MAXVALUE 時,資料庫不允許新增分區,因此不支援通過 ODC 分區計劃任務建立分區策略。

  • 分區計劃預設每小時的 00 分 00 秒執行。

  • 資料庫已存在一個分區計劃時,新建立的分區計劃審批通過後覆蓋原有分區計劃。

  • 如果表屬於表組(tablegroup),建立分區可能會失敗或破壞負載平衡,請謹慎配置建立策略。

  • 建立分區可能會導致表組(tablegroup)失效,因為同屬於一個表組的表必須擁有完全一致的分區,而建立分區可能會破壞這種現狀,導致表組失效。

  • 如果表包含全域索引,刪除分區會導致全域索引失效,請謹慎操作;如果選擇重建全域索引可能因耗時較久導致業務問題,或者重建全域索引失敗導致線上問題。

  • 重建全域索引選項僅對 Oracle 模式下有效,MySQL 模式下無此選項,因 MySQL 模式下預設會重建全域索引。

建立分區計劃

樣本:在資料來源 mysql4253 下資料庫 test_data 中,每隔 1 個月預建立 1 個 order 表分區。

資訊項

樣本值

專案名稱

odc_test

所屬資料來源

mysql4253

資料庫名稱

test_data

表名稱

order

  1. 在 SQL 視窗中,編輯 SQL 陳述式以建立表 order。

    image

    CREATE TABLE `order` (
    `time` date NOT NULL,
     `parti_key` int(11),
     `name` varchar(120) DEFAULT NULL
    ) partition by range columns(time, parti_key)
    (partition p2023_01 values less than ('2023-01-01', 20230101),
    partition p2023_02 values less than ('2023-02-01', 20230201))
  2. 在 SQL 開發視窗的 工單 頁簽中單擊 分區計劃 > 建立分區計劃

    image

  3. 建立分區計劃 面板中指定以下資訊。

    image

    資訊項

    說明

    資料庫

    選擇建立分區計劃所屬資料庫。

    分區策略

    勾選所屬庫中的 Range 分區表,並單擊image編輯對應的分區策略。具體配置請參見設定分區策略分區策略使用樣本

    說明
    • 勾選 分區策略 右側的 僅顯示未設定的表 時,支援過濾未設定的表。

    • 勾選 Range 分區表時,支援大量設定分區策略。

    設定策略執行循環

    1. 建立策略執行循環:設定所有的分區建立策略的執行時機,例如每晚 2 點執行。

    2. 刪除策略執行循環:勾選自訂刪除策略執行循環,設定所有的分區刪除策略的執行時機,如果不勾選,分區刪除策略將會和分區建立策略一起被調度執行。

    樣本:建立策略執行循環每晚 3 點,刪除策略執行循環每晚 1 點。表示每晚 3 點將會運行該資料庫下所有的分區建立策略,每晚 1 點將會運行該資料庫下所有的分區刪除策略。

    image

    任務設定

    選擇任務錯誤處理方式:

    • 停止任務:停止任務為預設,運行指令碼的過程中出現錯誤時會停止運行。

    • 忽略錯誤繼續任務:選擇忽略錯誤繼續任務方式,在運行指令碼出現錯後將跳過錯誤語句繼續執行。

    執行逾時時間

    預設 2 小時。

    備忘

    描述專案的業務背景資訊,例如變更目的、預期目標等。

  4. 指定上述資訊後,單擊面板右下角的 提交 按鈕完成建立分區計劃任務。

  5. 任務產生後會自動彈出 工作中樞 面板,在工作中樞可以查看任務審批狀態和任務資訊。

    image

查看分區計劃

任務資訊

  1. 工單 的分區計劃列表中,單擊操作列中的 查看 按鈕。

    image

  2. 在彈出的 任務詳情 面板中,單擊 任務資訊 頁簽查看任務基本資料和設定資訊。

    資訊項

    說明

    任務基本資料

    顯示 任務狀態任務編號任務類型、所屬資料來源風險等級、備忘、建立人 建立時間 等資訊。

    任務設定資訊

    顯示建立分區計劃任務時所選擇的 Range 分區表的分區策略資訊。

  3. 在任務資訊面板右下角,單擊 再次發起,可以重新發起任務。

任務流程

  1. 任務詳情 面板中,單擊 任務流程 頁簽查看 發起任務狀態審批狀態執行狀態 完成結果 等資訊。

  2. 在面板右下角,單擊 再次發起,可重新發起任務。

關聯記錄

  1. 任務詳情 面板中,單擊 關聯記錄 頁簽查看 任務編號所屬庫建立時間任務狀態 查看 操作等資訊。

  2. 在面板右下角,單擊 再次發起,可重新發起任務。

任務日誌

  1. 任務詳情 面板中,單擊 任務日誌 標籤查看任務的全部日誌和警示日誌。

    image

    資訊項

    說明

    全部日誌

    全部日誌顯示任務的 INFOERROR WARN 日誌等全量資訊。 單擊 尋找下載 複製 按鈕,可尋找資訊、下載或複製全部日誌資訊。

    警示日誌

    警示日誌單獨顯示任務的 ERROR WARN 日誌。當任務失敗時,可通過警示日誌查看錯誤資訊。 單擊 尋找下載 複製 按鈕,可尋找資訊、下載或複製警示日誌資訊。

  2. 單擊 再次發起,可重新發起任務。

匯入 分區計劃任務

您可以將OceanBase 中的執行個體遷移到 OB Cloud,並將已遷移執行個體中包含的分區計劃任務遷移到 OB Cloud。

步驟一:從OceanBase 匯出分區計劃任務

  1. OceanBase 管理主控台 的左側導覽列中,單擊 資料研發

  2. 單擊 工單 > 分區計劃 ,在 分區計劃頁面中,勾選目標工單,單擊 大量匯出

    image

  3. 在匯出定時任務頁面中,確認需要匯出的任務,單擊 全部匯出

    image

  4. 匯出成功後,在彈窗中複製密鑰,並妥善儲存,在後續匯入該 分區計劃時需要填寫。

    image

步驟二:匯入分區計劃任務到 OB Cloud

  1. OceanBase 管理主控台 的左側導覽列中,單擊 生態整合,選擇 SQL 開發 > OceanBase 開發人員中心

    image

  2. 在開發人員中心,單擊 工單 > 分區計劃,在 分區計劃頁面中,勾選目標工單,單擊 匯入 分區計劃

    image

  3. 在匯入分區計劃的頁面中,添加步驟一中匯出的 zip 檔案,填寫 檔案密鑰,選擇匯入專案後,單擊 下一步:預覽

    image

  4. 在預覽頁面中,選擇新的目標資料庫後,勾選 我已確認匯入的工單新舊資料庫物件一致,單擊 匯入

    image

  5. 匯入成功後,可以在分區計劃列表中看到匯入的分區計劃。

    image

相關文檔