全部產品
Search
文件中心

PolarDB:庫表恢複方式2:恢複到過去時間點

更新時間:Sep 29, 2025

庫表恢複是指僅恢複指定的部分庫或部分表到原叢集。例如遊戲業務中有時僅需恢複某個或某些玩家的資料,此時可使用庫表恢複方式。庫表恢複支援從備份組恢複和恢複到過去時間點兩種備份方式。本文介紹如何將指定的庫或表恢複到過去時間點。

簡介

PolarDB提供的庫表恢複功能,不會覆蓋和刪除原叢集中已有的庫表,不會將資料寫入原叢集的庫表中,而是在原叢集中建立庫表。您可以在庫表恢複過程中指定新的庫名或表名,通過指定庫和表的方式,將db1的備份資料恢複到db2

庫表恢複過程中,不會影響原叢集資料庫的正常訪問,但可能會佔用原叢集的計算資源,從而導致叢集CPU和IOPS使用率升高。

適用範圍

叢集版本

庫表恢複功能支援PolarDB企業版和標準版,但對叢集的修訂版本有特定要求。不同情境下的最低版本要求如下表所示。

  • 基礎功能:代表支援庫表恢複所需滿足的最低版本。

  • GDN主叢集/新版恢複流程:代表在全球資料庫(GDN)主叢集上使用,或想獲得新版恢複流程速度最佳化時,所需滿足的最低版本要求。

    說明

    庫表恢複的新版恢複流程是在舊版的基礎上,對資料恢複至原叢集的速度進行了最佳化。其原理和速度可參見整體流程和預估時間

版本系列

MySQL 版本

架構

基礎功能(最低修訂版本)

GDN主叢集/新版恢複流程(最低修訂版本)

企業版(叢集版)

5.6

X86

5.6.1.0.25

5.6.1.0.42

5.7

X86

5.7.1.0.8

5.7.1.0.36

8.0.1

X86

8.0.1.1.14

8.0.1.1.46

8.0.2

X86

8.0.2.2.0

8.0.2.2.26

標準版

5.6

X86

5.6.1.0.42

5.6.1.0.42

5.7

X86

5.7.1.0.30

5.7.1.0.30

8.0.1

X86

8.0.1.1.38.2

8.0.1.1.38.2

倚天(ARM)

8.0.1.1.41

8.0.1.1.41

8.0.2

X86

8.0.2.2.21

8.0.2.2.21

說明

您可在PolarDB MySQL版叢集的基本資料頁面的配置資訊地區查看當前叢集的核心版本。

其他限制

在使用庫表恢複功能時,請注意以下不支援的情境:

說明

若您當前叢集不支援使用庫表恢複功能,您可以通過全量恢複的方式將資料恢複到新的叢集,再將資料移轉至原叢集。

注意事項

  • 當前庫表恢複方式中的恢複到過去時間點,只支援從一級備份的過去時間點恢複,不支援從二級備份恢複。

  • 庫表恢複只會恢複指定的表,操作時請確認已選中所有需要恢複的表。

    說明

    若無法確定所有涉及的表,建議您將整個叢集的歷史資料恢複到一個新叢集後再遷移至原叢集。更多詳情,請參見全量恢複方式1:從備份組恢複全量恢複方式2:恢複到過去時間點

  • 在以下情境執行庫表恢複操作時,庫表恢複會執行失敗。

    • 指定的庫名或表名在原叢集中已存在。

    • 從備份組產生時間點到恢復點期間,恢複的表被刪除或叢集中存在與目標庫或目標表同名的庫表。

  • 若選擇非整庫恢複,該庫每次最多支援恢複100張表。若選擇恢複庫,則支援恢複的表數量為該庫下所有的表。

    說明
  • 叢集內的表(包括系統資料表)超過50000張時也可以使用庫表恢複功能。

    說明
    • 該功能目前處於灰階階段,如需使用,您可以聯絡我們加入白名單,啟用該功能。

    • 查詢叢集內的表(包括系統資料表)數量。SQL語句如下:

      SELECT COUNT(*) FROM information_schema.tables;
    • 查詢叢集內的系統資料表數量。SQL語句如下:

      SELECT COUNT(*) FROM information_schema.tables WHERE table_schema IN ('sys', 'performance_schema', 'mysql', 'information_schema', '__recycle_bin__');
  • 庫表恢複功能不支援恢複觸發器(Trigger),若原表設定了Trigger,該Trigger不會被恢複。

  • 庫表恢複功能不支援恢複外鍵(Foreign Key),若原表設定了Foreign Key,該Foreign Key不會被恢複。

操作步驟

  1. 登入PolarDB控制台,在左側導覽列單擊叢集列表,選擇叢集所在地區,並單擊目的地組群ID進入叢集詳情頁。

  2. 在左側導覽列中,選擇配置与管理 > 备份恢复,單擊库(表)恢复

  3. 在彈出的對話方塊中,選擇恢复方式按时间点,並選擇需要恢复至的時間點。

    image

    說明
    • 恢复至的時間點選擇需符合可恢复时间点的限制,同時離該時間點最近一份全量備份組中必須存在需要恢複的表,才能正常使用按时间点恢複功能。可恢復點的範圍與備份設定中的日志备份保留期限有關,預設為7天。

    • 庫表恢複功能根據所佔用的IOPS可分為快速常規安全三種配置,您可以根據實際需求進行選擇。恢複速度配置的預估耗時請參見庫表恢複速度測試資料參考

      • 快速:向當前叢集恢複資料期間,可能佔用大量IOPS(約60%),建議在業務低峰期選擇。

      • 常規【推薦】:向當前叢集恢複資料期間,可能佔用部分IOPS(約30%)。

      • 安全:向當前叢集恢複資料期間,僅佔用少量IOPS(約15%),可能會大幅影響恢複速度。

  4. 需要恢复的库和表地區左側,選中需要恢複的目標庫,並在右側選中目標表。

    1

    說明
    • 若您未指定庫名和表名,則系統會通過在原庫名或原表名後添加_backup的方式,來自動產生新的庫名和表名。如原表為test,則自動產生的新的表名為test_backup

    • 若選中目標庫後但未指定具體的資料表,預設恢複該庫下的所有資料。

  5. 確認已選擇您需要恢複的庫和表後,單擊确定即可。

相關API

API描述
DescribeMetaList調用DescribeMetaList介面查看支援恢複的庫表元資訊詳情。
RestoreTable調用RestoreTable恢複PolarDB庫表。