全部產品
Search
文件中心

PolarDB:一鍵升級RDS MySQL X-Engine至PolarDB MySQL版

更新時間:Jul 06, 2024

您可以將儲存引擎為X-Engine的RDS MySQL一鍵升級至PolarDB MySQL版,其採用了一鍵升級功能的邏輯遷移方式。本文匯總了該情境下的注意事項、前提條件、遷移步驟、費用說明等相關內容。

前提條件

使用限制

  • 僅支援將RDS MySQL一鍵升級至相同版本或更高版本的PolarDB MySQL版,不支援降版本升級。如不支援從RDS MySQL 5.7一鍵升級至PolarDB MySQL版 5.6,不支援從RDS MySQL 8.0.2一鍵升級至PolarDB MySQL版 8.0.1。

  • 帶地址切換中,當前不支援IPv6地址的帶地址切換。

  • 暫不支援跨地區遷移。

  • 遷移期間不允許對源RDS執行個體執行參數設定的操作。

  • 僅支援遷移庫、表、視圖、預存程序、函數這五類結構。

  • 對源庫有如下限制:

    類型

    說明

    源庫限制

    • 待同步的表需具備主鍵或唯一約束,且欄位具有唯一性,否則可能會導致目標資料庫中出現重複資料。

    • 如同步對象為表層級,且需進行編輯(如表列名映射),則單次同步任務僅支援同步至多1000張表。當超出數量限制,任務提交後會顯示請求報錯,此時建議您拆分待同步的表,分批配置多個任務,或者配置整庫的同步任務。

    • Binlog日誌:

      • 需開啟Binlog,開啟方法請參見設定執行個體參數,並且binlog_row_image為full。否則預檢查階段提示報錯,且無法成功啟動資料同步任務。

      • 如為增量同步處理任務,DTS要求來源資料庫的本地Binlog日誌儲存24小時以上,如為全量同步和增量同步處理任務,DTS要求來源資料庫的本地Binlog日誌至少保留7天以上(您可在全量同步完成後將Binlog儲存時間設定為24小時以上),否則DTS可能因無法擷取Binlog而導致任務失敗,極端情況下甚至可能會導致資料不一致或丟失。由於您所設定的Binlog日誌儲存時間低於DTS要求的時間進而導致的問題,不在DTS的SLA保障範圍內。如源為RDS MySQL,具體操作請參見管理本地日誌(Binlog)

注意事項

  • 源RDS和目標PolarDB叢集對應串連地址的SSL開啟狀態需保持一致:

    • 如果源RDS的串連地址開啟了SSL,並且您選擇帶地址切換並切換該地址,請確保PolarDB叢集對應的串連地址已開啟SSL。

    • 如果源RDS的串連地址未開啟SSL,則請確保目標PolarDB叢集對應串連地址的SSL功能也保持關閉。

  • 如果源RDS主執行個體和唯讀執行個體的白名單配置不一致,為了保證唯讀節點的白名單自動同步到目標PolarDB叢集,請提前將唯讀節點的白名單合入到主節點的白名單配置中。

  • 邏輯遷移過程中,全量資料初始化時將佔用源庫和目標庫一定的讀寫資源,可能會導致資料庫的負載上升。

  • 邏輯遷移過程中,全量資料初始化時會並發執行INSERT操作,導致目標資料庫的表產生片段,因此全量初始化完成後目標執行個體的資料表空間比源執行個體的資料表空間大。

  • 邏輯遷移過程中,請勿手動釋放DTS任務。

  • 全量資料同步需要一定時間,耗時與資料量大小有關,在此期間,目標端狀態為建立中,請耐心等待。

費用說明

遷移費用

一鍵升級過程中,整個遷移過程不收取額外費用,僅收取目標PolarDB MySQL版叢集的費用。

您可以在遷移過程中通過配置是否開啟熱備叢集以及選擇不同的儲存類型來控制目標PolarDB MySQL版叢集的成本。

操作步驟

儲存引擎為X-Engine的RDS MySQL執行個體一鍵升級到PolarDB MySQL版的操作步驟整體可參考一鍵升級操作步驟。但針對儲存引擎為X-Engine的RDS MySQL執行個體,各個步驟中有如下特殊注意事項:

  • 在進行步驟一:從RDS同步時:

    • 目前僅PolarDB MySQL版企業版支援InnoDB & 高壓縮引擎,因此在建立目標PolarDB MySQL版叢集時,產品版本請選擇企業版,儲存引擎請選擇InnoDB & 高壓縮引擎,並配置高壓縮引擎比例。

    • 目標PolarDB叢集PolarDB MySQL版叢集建議選擇隨用隨付。隨用隨付執行個體在遷移過程中不計費。

  • 在進行步驟二:遷移切換時:

    • 正向遷移同步時,源RDS MySQL執行個體的資料庫同步到目標PolarDB叢集時,都會被設定為X-Engine引擎。因此開始遷移後,請檢查目標PolarDB叢集的表引擎是否為X-Engine引擎。若為InnoDB,請提交工單聯絡我們處理。

    • 遷移切換後到遷移結束前,PolarDB資料庫將反向同步到源RDS MySQL執行個體,反向同步的表引擎與PolarDB資料庫建表時一致。

  • 在進行步驟二:遷移切換步驟三:完成遷移時:

    • 目標PolarDB叢集,建表預設使用Innodb引擎,而不是X-Engine。若您需要建立X-Engine引擎表,請在執行DDL時指定引擎類型,即顯式指定engine=xengine

    • 您可以在PolarDB控制台修改參數default_storage_engine= xengine,從而將建表的預設引擎設定為X-Engine。

      說明

      修改該參數後,需要重啟叢集內的所有節點,新的參數值才會生效。重啟前,請提前做好業務安排,謹慎操作。