RDS PostgreSQL實例支持通過一鍵上云功能,實現RDS PostgreSQL實例間的數據遷移。
前提條件
RDS PostgreSQL實例需要滿足以下條件:
源實例與目標實例大版本相同,當前支持PostgreSQL 10或以上版本。
目標實例為主實例,只讀實例不支持一鍵上云。
目標實例的存儲類型為云盤。
目標實例為空,無數據,可用存儲空間大于等于源實例中數據大小的總和。
源實例和目標實例所使用的VPC網段不能沖突。
注意事項
操作步驟
本文以華北2(北京)的RDS PostgreSQL實例遷移到華東1(杭州)為例。
云企業網配置,使不同地域的兩個RDS PostgreSQL實例內網互通。
創建云企業網實例。
登錄云企業網管理控制臺。
在云企業網實例頁面,單擊創建云企業網實例。
在創建云企業網實例頁面,根據以下信息配置云企業網實例,然后單擊確認。
配置
說明
名稱
云企業網實例的名稱。
名稱在2~128個字符之間,以大小寫字母或中文開頭,可包含數字、短劃線(-)或下劃線(_)。
描述
云企業網實例的描述。
描述可以為空或可以填寫2~256個中英文字符,不能以
http://
和https://
開頭。
為云企業網實例添加VPC。
在云企業網實例頁面,單擊已創建的云企業網實例ID。
在基本信息頁面,單擊下圖中VPC數量后的圖標,為云企業網實例添加VPC。
在連接網絡實例頁面,配置網絡實例信息后,單擊確認創建。
說明本步驟需要分別添加源實例和目標實例的VPC,因此需要添加兩次,下表以添加源實例的VPC為例,添加目標實例VPC的操作方法相同,地域和網絡實例參數,請修改為目標實例的地域和VPC。
參數
取值說明
實例類型
默認為專有網絡(VPC),無需修改。
地域
選擇源實例所在地域,本示例選擇華北2(北京)。
轉發路由器
默認當前地域下無轉發路由器,系統將默認創建,分別選擇轉發路由器的主可用區和備可用區。
資源歸屬UID
選擇同賬號。
連接名稱
自定義。
網絡實例
選擇源實例使用的VPC實例。可在RDS管理控制臺的數據庫連接中查看VPC ID。
選擇VPC后,分別選擇轉發路由器配置的主備可用區對應的交換機。
創建完成后,結果示例如下:
購買跨地域帶寬。
在云企業網實例頁面,單擊已創建的云企業網實例ID。
在基本信息頁面,切換到帶寬包管理頁簽,單擊購買帶寬包(預付費)。
在購買頁面,根據以下信息配置帶寬包,然后單擊立即購買并完成支付。
配置項
說明
商品類型
非跨境:中國內地到中國內地的帶寬包或非中國內地到非中國內地的帶寬包。例如:中國內地到中國內地、亞太到北美。
跨境:中國內地到非中國內地的帶寬包,例如:中國內地到北美。
本示例選擇非跨境。
云企業網
默認選擇當前云企業網,無需修改。帶寬包購買成功后,帶寬包自動綁定至該云企業網實例。
區域-A
選擇參與互通的網絡實例所在區域。本示例選擇中國內地。
說明帶寬包創建后,不支持修改互通區域。
區域-B
選擇參與互通的網絡實例所在區域。本示例選擇中國內地。
計費方式
顯示帶寬包的計費方式。默認為按帶寬計費。
帶寬值
選擇帶寬值。單位:Mbps。
帶寬包名稱
輸入帶寬包的名稱。
購買時長
選擇帶寬包的購買時長。
選中到期自動續費可開啟帶寬包自動續費功能。
資源組
選擇帶寬包所屬的資源組。
僅購買非跨境的帶寬包時,支持配置該項。
購買完成后,結果示例如下:
設置跨地域帶寬。
在云企業網實例頁面,單擊已創建的云企業網實例ID。
在基本信息頁面,切換到帶寬包管理頁簽,單擊設置跨地域帶寬。
在連接網絡實例頁面,配置跨地域連接信息,然后單擊確定創建。
配置項
說明
實例類型
選擇跨地域連接。
地域
源實例的地域。本示例選擇華北2(北京)。
轉發路由器
自動獲取已創建的轉發路由器,無需配置。
對端地域
目標實例的地域,本示例選擇華東1(杭州)。
轉發路由器
自動獲取已創建的轉發路由器,無需配置。
帶寬包分配方式
根據需要選擇帶寬包的分配方式。取值:
從帶寬包分配
按流量付費
本文以從帶寬包分配為例。
帶寬包實例
選擇云企業網實例已綁定的帶寬包實例。
說明僅帶寬包分配方式選擇從帶寬包分配時配置該參數。
帶寬
輸入允許使用的帶寬值。單位:Mbps。
默認鏈路類型
默認使用的鏈接類型。取值
鉑金
金
說明僅帶寬包分配方式選擇按流量付費時可配置為鉑金。
創建成功后,結果示例如下:
源實例配置。
添加白名單。
創建高權限賬號。
創建賬號的具體操作,請參見創建賬號。賬號類型請選擇高權限賬號。
說明高權限賬號用于遷移上云,需要具備CREATE ROLE、REPLICATION和pg_monitor權限。如果您已有高權限的賬號,則無需重復創建。
目標實例配置。
上云評估。
訪問RDS實例列表,在上方選擇地域,然后單擊目標實例ID。
在左側導航欄單擊一鍵上云/容災搭建,單擊可行性評估頁簽。
在配置向導的選擇場景與源端類型步驟,選擇場景為遷移上云,并選擇源端為阿里云RDS實例,單擊下一步。
在目標實例配置步驟,單擊下一步。
在源實例配置步驟,選中所有配置準備項,單擊下一步。
在發起可行性評估步驟,配置源庫信息。
參數
取值說明
遷移任務名
系統自動生成,無需修改。
源端 VPC IP/DNS
填寫源實例的內網連接地址。具體請參見查看內網地址。
源端Port
填寫源實例的端口,具體請參見查看端口。
用戶名
源實例中創建的高權限數據庫賬號。
密碼
源實例中創建的高權限數據庫賬號的密碼。
單擊創建可行性評估任務。
說明遷移評估任務期間,實例狀態將變更為維護實例中。
遷移評估完成后,您可以在可行性評估頁面的遷移上云列表查看遷移評估任務的狀態。
只有狀態為成功,您才能進行遷移上云步驟。
如果狀態為失敗,請單擊操作列的查看報告,根據報錯進行處理,常見報錯請參見解讀上云評估報告。
遷移上云。
訪問RDS實例列表,在上方選擇地域,然后單擊目標實例ID。
在左側導航欄單擊一鍵上云/容災搭建,切換至遷移上云頁簽,單擊創建遷移上云任務。
在創建遷移上云任務窗口中,從關聯評估任務列表中選擇已成功的上云評估任務。
說明選擇關聯評估任務后,源庫類型、源端 IP/DNS、源端Port和用戶名參數將會自動獲取,無需配置。
單擊發起遷移上云,系統將自動啟動上云任務。
重要上云任務期間,實例狀態將變更為遷入數據中。您可以對源實例進行讀寫,但請勿執行遷移、重啟、變配等操作。
將目標RDS PostgreSQL提升為主庫。
在遷移上云任務中,單擊上云階段列的鏈接,查看當前上云任務進度。
當上云階段為增量同步時,可單擊操作列的上云切換,將目標RDS PostgreSQL提升為主庫,正式提供服務。
在切換上云窗口,根據上云須知提示,設置源實例只讀或應用停止寫入。
說明參考如下步驟,設置源實例只讀:
通過設置實例參數功能,修改源實例參數rds_force_trans_ro_non_sup取值為on。
使用如下語句,中斷所有現有會話。
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE usename not in ('replicator', 'monitor', 'pgsql', 'aurora') AND pid != pg_backend_pid();
選中所有復選框,單擊立即切換,等待遷移完成。
后續配置
為了確保RDS PostgreSQL實例遷移后,應用側在不修改業務代碼的情況下依然正常連接,還需要在目標實例做如下配置。