RDS SQL Server支援執行個體間的資料庫複寫功能,可滿足使用者在不同情境下的資料移轉和同步等需求。您可以通過RDS控制台或API將一個執行個體中的單個或多個資料庫,以及來源資料庫的所屬使用者和許可權複製到另外一個執行個體中。
功能說明
RDS SQL Server將資料從源執行個體複製到目標執行個體期間,會先對源執行個體做一次全量資料備份,待源執行個體備份完成後,再將資料複製到目標執行個體。如果資料複製期間源執行個體持續有新的寫入操作(增量資料),那麼這部分增量資料不會被複製到目標執行個體中。
您可以選擇單庫複製或全庫複製,且整個複製操作要麼全部成功,要麼全部失敗,以此保證資料的一致性。具體複製規則如下:
執行個體要求 | 說明 |
資料庫版本 | 已有執行個體資料庫版本必須大於等於原執行個體資料庫版本。 |
執行個體系列 | 不支援高系列到低系列。系列從高到低依次為叢集系列 > 高可用系列 > 基礎系列。 |
執行個體規格 | 僅支援同規格到同規格、通用規格到獨享規格、獨享規格到通用規格。 |
RDS資料庫複寫功能與DTS遷移功能的區別
區別項 | RDS資料庫複寫功能 | DTS遷移功能 |
功能原理 | RDS資料庫複寫的實現原理是通過備份組還原,即通過指定時間點或者備份組來將指定的資料庫複寫到目標執行個體,不會刪除源庫資料。 | DTS遷移為邏輯遷移,其實現原理是通過讀取並解析源端日誌的方式進行資料移轉。資料移轉過程包括三個階段,即結構遷移、全量資料移轉和增量資料移轉, 不會刪除源庫資料。 |
支援的資料來源 | 僅支援源為RDS SQL Server。 | 支援源為阿里雲ECS自建資料庫、IDC自建資料庫、其它雲端服務器上的自建資料庫或RDS SQL Server。更多詳情,請參見支援的資料庫。 |
實現模式 | 僅支援一次性全量複製,不收費。 | 支援結構遷移和全量資料移轉、增量資料移轉。增量遷移收費,詳情請參見計費概述。 |
前提條件
RDS SQL Server執行個體需滿足以下條件:
源執行個體和目標執行個體必須在同一個阿里雲帳號下。
源執行個體和目標執行個體需位於同一地區(可用性區域可不同),且網路類型需一致。
目標執行個體中不得存在與源執行個體待覆制資料庫同名的資料庫。
目標執行個體的可用儲存空間需大於源執行個體中待覆制資料庫佔用的空間。儲存空間不足時,請及時擴容。
操作步驟
訪問RDS執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。
在左側功能表列中單擊資料庫管理。
單擊複制到其他執行個體,配置如下參數。
配置項
說明
源執行個體名稱
系統預設顯示源執行個體的ID。
目標執行個體名稱
選擇目標RDS執行個體。
說明源執行個體和目標執行個體必須在同一地區,可用性區域可以不同,網路類型需相同。
需複製的資料庫
指定哪些源執行個體中的資料庫需要複製到目標執行個體。您可以通過
或
靈活控制需要複製的資料庫。選擇多個資料庫或者全部資料庫時,請確保:
目標執行個體的可用儲存空間大於源執行個體中待覆制資料庫佔用的空間。
需要複製的資料庫沒有與目標執行個體中的資料庫重名。
說明若複製操作進行中時,目標執行個體中建立了與需要複製的資料庫同名的庫,此時系統會跳過同名的資料庫,不做複製。
若選擇了某個資料庫,則資料庫內的表結構和表資料均會複製過去。
是否複製使用者和許可權
是否將來源資料庫的所屬使用者以及許可權複製到目標執行個體的資料庫中。
同步複製資料庫的使用者和許可權:將源執行個體中該庫對應的使用者和許可權複製到目標執行個體。存在以下兩種情況:
若目標執行個體中存在對應的使用者,直接給其添加源執行個體中對應的許可權;
若目標執行個體中不存在對應的使用者,則先在目標執行個體中建立該使用者,再賦予相應的許可權。
僅複製資料庫,不復原使用者與許可權:(預設選項)源執行個體該庫對應的使用者和許可權不複製到目標執行個體。
您可以在目標執行個體中為該庫添加帳號和許可權,請參見建立資料庫和帳號。
單擊確定。
相關操作
通過API在RDS SQL Server執行個體間複製資料庫,請參見CopyDatabaseBetweenInstances - RDS SQL Server執行個體間複製資料庫。
若擁有RDS SQL Server執行個體的備份資料,您可以將備份資料恢複到已有執行個體或新執行個體上,可用於誤操作後恢複以及分析歷史資料等情境。