若您要恢復至的時間點是某個備份集(快照)的時間點,可通過按備份集(快照)恢復的方式恢復誤操作的數據庫或者表的數據。
前提條件
已存在備份集(快照)。
版本要求和使用限制
版本要求
您可以通過查詢版本號來確認集群版本。
當前PolarDB MySQL版的企業版和標準版都支持庫表恢復功能,具體版本要求及限制如下。
PolarDB企業版支持庫表恢復。目前僅集群版系列支持庫表恢復功能,集群版本要求如下:
PolarDB MySQL版5.6版本,修訂版本需為5.6.1.0.25及以上。
PolarDB MySQL版5.7版本,修訂版本需為5.7.1.0.8及以上。
PolarDB MySQL版8.0.1版本,修訂版本需為8.0.1.1.14及以上。
PolarDB MySQL版8.0.2版本,修訂版本需為8.0.2.2.0及以上。
PolarDB標準版支持庫表恢復,集群版本要求如下:
PolarDB MySQL版5.7版本X86架構,修訂版本需為5.7.1.0.30及以上。
PolarDB MySQL版8.0.1版本X86架構,修訂版本需為8.0.1.1.38.2及以上。
PolarDB MySQL版8.0.2版本X86架構,修訂版本需為8.0.2.2.21及以上。
PolarDB MySQL版8.0.1版本倚天(ARM)架構,修訂版本需為8.0.1.1.41及以上。
若存儲類型為云盤,則不支持50000張表以上的庫表恢復。
GDN中的主集群支持庫表恢復功能,集群版本要求如下:
企業版
PolarDB MySQL版5.6版本,修訂版本為5.6.1.0.42及以上。
PolarDB MySQL版5.7版本,修訂版本需為5.7.1.0.30及以上。
PolarDB MySQL版8.0.1版本,修訂版本需為8.0.1.1.44及以上。
PolarDB MySQL版8.0.2版本,修訂版本需為8.0.2.2.25.3及以上。
標準版
PolarDB MySQL版5.6版本,修訂版本為5.6.1.0.42及以上。
PolarDB MySQL版5.7版本,修訂版本需為5.7.1.0.30及以上。
PolarDB MySQL版8.0.1版本,修訂版本需為8.0.1.1.38.2及以上。
PolarDB MySQL版8.0.2版本,修訂版本需為8.0.2.2.21及以上。
支持使用庫表恢復新版的集群版本要求如下:
企業版
PolarDB MySQL版5.6版本,修訂版本為5.6.1.0.42及以上。
PolarDB MySQL版5.7版本,修訂版本需為5.7.1.0.30及以上。
PolarDB MySQL版8.0.1版本,修訂版本需為8.0.1.1.44及以上。
PolarDB MySQL版8.0.2版本,修訂版本需為8.0.2.2.25.3及以上。
標準版
PolarDB MySQL版5.6版本,修訂版本為5.6.1.0.42及以上。
PolarDB MySQL版5.7版本,修訂版本需為5.7.1.0.30及以上。
PolarDB MySQL版8.0.1版本,修訂版本需為8.0.1.1.38.2及以上。
PolarDB MySQL版8.0.2版本,修訂版本需為8.0.2.2.21及以上。
說明庫表恢復新版是在庫表恢復舊版的基礎上,對數據恢復至原集群的速度進行了優化。其原理和速度可參見整體流程和預估時間。
使用限制
PolarDB多主集群(庫表)不支持庫表恢復。
不支持在包含全局二級索引(Global Secondary Index)的表上使用庫表恢復功能。
如果實例沒有RO節點,超過50000張表時將不支持庫表恢復功能。
不支持在GDN中的從集群上使用庫表恢復功能。
庫表恢復功能不支持恢復列存索引。
不支持在歸檔為冷數據的表上使用庫表恢復功能。
庫表恢復功能只支持恢復以InnoDB為存儲引擎的表。
若您當前集群不支持使用庫表恢復功能,您可以通過全量恢復方式1:從備份集恢復或全量恢復方式2:恢復到過去時間點的方式將數據恢復到新的集群,再將數據遷移至原集群。
注意事項
當前庫表恢復方式只支持從一級備份恢復,不支持從二級備份恢復。
庫表恢復只會恢復指定的表,操作時請確認已選中所有需要恢復的表。
說明若無法確定所有涉及的表,建議您使用集群恢復的方式恢復全量集群。
集群內的表(包括系統表)超過50000張時也可以使用庫表恢復功能。
若選擇非整庫恢復,該庫每次最多支持恢復100張表。若選擇恢復庫,則支持恢復的表數量為該庫下所有的表。
說明若您需要恢復的表數量較多,建議您使用集群恢復的方式恢復全量集群。
庫表恢復功能不支持恢復觸發器(Trigger),若原表設置了Trigger,該Trigger不會被恢復。
庫表恢復功能不支持恢復外鍵(Foreign Key),若原表設置了Foreign Key,該Foreign Key不會被恢復。
建議在業務低峰期進行數據恢復。
步驟一、開始庫表恢復
- 進入集群詳情頁,在左側導航欄中,選擇 。
在備份恢復頁面,單擊庫(表)恢復。
在彈出的對話框中,您可以根據業務需要選擇恢復方式為按備份集,并在備份集列表中選擇目標備份集。
在需要恢復的庫和表區域左側,選中需要恢復的目標庫,并在右側選中目標表。
說明若選中目標庫后但不指定具體的數據表,默認恢復該庫下的所有數據。
選中目標庫或目標表后,系統會自動在原庫或原表名稱(如
test
)后加_backup
作為新庫或新表的名稱(如test_backup
),您也可以自定義恢復后的庫名或表名。
單擊確定即可。
步驟二、進行數據比對
當庫表恢復完成后,您可以登錄集群,進行數據比對,驗證數據。
您可通過DMS登錄集群,也可通過其他客戶端或者命令行的方式。本文介紹通過DMS登錄集群進行驗證,關于其他方式,請參考連接數據庫集群。
- 在集群的基本信息頁面右上角,單擊登錄數據庫。
- 在彈出的對話框中,輸入集群的數據庫賬號和數據庫密碼,單擊登錄。
- 登錄DMS后請刷新頁面,在左側導航欄中,單擊已登錄實例。
- 在已登錄實例列表中,單擊目標集群名稱,找到并雙擊目標數據庫名稱,即可切換到目標數據庫進行管理。
- 查找到誤操作的數據,確認其是否已恢復到誤操作前,且其他數據也和誤操作發生前一致。