全部產品
Search
文件中心

PolarDB:一鍵升級RDS MySQL至PolarDB MySQL版

更新時間:Dec 27, 2025

PolarDB支援將RDS MySQL執行個體一鍵升級至PolarDB MySQL版叢集。在升級流程中,將自動同步RDS執行個體的帳號、資料庫、IP白名單及必要的參數配置。此外,您還可以選擇保留原有資料庫連接地址,從而使應用程式無需修改任何串連配置即可順利切換至PolarDB叢集。這一流程顯著降低了遷移難度,支援業務平滑過渡。

您能夠將RDS執行個體一鍵升級至相同或更高版本PolarDB叢集,例如:

  • RDS MySQL 5.6執行個體一鍵升級至PolarDB MySQL版5.6、5.7、8.0.1或8.0.2。

  • RDS MySQL 5.7執行個體一鍵升級至PolarDB MySQL版5.7、8.0.1或8.0.2。

  • RDS MySQL 8.0執行個體一鍵升級至PolarDB MySQL版8.0.1或8.0.2。

    說明
    • PolarDB MySQL版8.0.1完全相容社區MySQL-8.0.13及更低的版本,8.0.2完全相容社區MySQL-8.0.18及更低的版本。

    • PolarDB MySQL版8.0.1與8.0.2所支援的產品功能有所差異,具體資訊請參見核心版本功能對比

遷移方式

在一鍵升級流程中,遷移方式分為物理遷移(物理複製)邏輯遷移(DTS資料同步)。系統將根據RDS執行個體的MySQL版本、產品系列及儲存類型自動選擇適用的遷移方式,且不支援手動修改。具體區分如下:

對比項

物理遷移(物理複製)

邏輯遷移(DTS資料同步)

適用執行個體

RDS MySQL 5.6和5.7高可用版且儲存類型為本地SSD盤的執行個體,升級至相同版本的PolarDB MySQL版叢集

說明

執行個體存在核心小版本限制:

  • 針對RDS MySQL 5.6高可用版,核心小版本需為20190815或以上版本。

  • 針對RDS MySQL 5.7高可用版,核心小版本需為20200331或以上版本。

除屬於物理遷移(物理複製)方式外,其餘形態的RDS MySQL執行個體升級至相同或不同版本的PolarDB MySQL版叢集。

說明

無核心小版本限制。

實現方式

通過物理複製的方式,先從RDS執行個體複製全量資料,然後保持增量同步處理至PolarDB叢集。

重要

增量同步處理過程中,所有建立的非InnoDB表都會被轉成InnoDB表。

通過Data Transmission Service建立資料同步任務,先同步RDS執行個體的庫表結構和全量資料至PolarDB叢集,再保持增量資料同步。

說明
  • 全量資料初始化時,會並發執行INSERT操作,導致PolarDB叢集中的表產生片段,因此全量初始化完成後PolarDB叢集的資料表空間會比RDS執行個體的資料表空間大。

  • 在全量資料初始化階段,可能會出現記憶體使用量率偏高的現象。這是由於InnoDB引擎的記憶體緩衝池innodb_buffer_pool會主動式快取資料,以加速讀寫操作,從而引起整體記憶體使用量率的上升。在一鍵升級完成後,您可以在控制台適當調整記憶體緩衝區innodb_buffer_pool_size的大小,以降低這部分的記憶體使用量率。

是否需要DTS工具

不需要。

需要。

遷移MySQL版本

僅支援遷移至相同版本。

支援遷移至相同版本或更高版本,但不支援降低版本。

升級流程時間長度限制

需在30天內完成。到期後,將關閉遷移功能。

需在30天內完成。到期後,將關閉遷移功能。

是否支援跨地區遷移

不支援。

不支援。

是否支援增量同步處理

支援。

支援。

是否支援新增庫的遷移

支援。

不支援。

說明

如需同步新增庫,請前往DTS控制台修改同步對象,將新增庫配置到正向和反向任務中。

是否支援結構遷移

支援。

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

方案優勢

  • 帶地址切換:可保留原有資料庫連接地址,應用程式無需修改任何串連配置即可切換至PolarDB叢集。

  • 一鍵升級流程中,資料0丟失。

  • 支援增量遷移。

  • 支援線上熱遷移。一鍵升級流程中僅閃斷一次且停機時間小於10分鐘。業務中斷僅限於遷移切換操作。

  • 支援遷移復原功能。如果因業務變更不再需要遷移,或在遷移失敗的情況下,可以在10分鐘內進行恢複。

RDS執行個體影響

在一鍵升級流程中,RDS執行個體的某些操作將受到限制,且部分操作可能會導致RDS執行個體出現閃斷或負載上升的情況。具體情況如下所示:

  • 一鍵升級流程中,不可修改執行個體參數。

  • 一鍵升級流程中,RDS執行個體無法進行退訂(釋放)或變更可用性區域等操作。

  • 在進行業務切換操作時,若您選擇使用帶地址切換,切換過程中業務可能會中斷1~5分鐘。若您選擇使用不帶地址切換,則需儘快修改應用程式的串連配置,以便將其串連到PolarDB叢集。

  • 根據遷移方式,若您是通過邏輯遷移(DTS資料同步)進行一鍵升級,則會存在以下影響:

    • 若已建立觸發器(Trigger),需先刪除RDS執行個體中的觸發器,否則會導致遷移中斷。

    • 全量資料初始化時,請勿執行庫或表結構變更的DDL操作,否則會導致資料同步任務失敗。

    • 全量資料初始化時,會佔用RDS執行個體和PolarDB叢集的讀寫資源(如CPU和IOPS),可能導致RDS執行個體的負載上升。

使用須知

前提條件

您的RDS執行個體需滿足以下條件:

  • 執行個體基本資料:

    MySQL版本

    基礎系列

    高可用系列

    叢集系列

    5.6

    -

    本地SSD盤

    -

    5.7

    雲端硬碟

    本地SSD盤雲端硬碟

    雲端硬碟

    8.0

    雲端硬碟

    本地SSD盤雲端硬碟

    雲端硬碟

  • 資料表的儲存引擎類型需為InnoDBX-Engine

  • 若您的執行個體不滿足物理遷移(物理複製)的要求,系統將自動選擇邏輯遷移(DTS資料同步)的方式進行升級。在這種情況下,為避免一鍵升級失敗,RDS執行個體還需滿足以下條件:

    • 不存在DTS雙向同步任務。若存在DTS雙向同步任務,在進行一鍵升級時可能會導致資料不一致的情況,請勿進行一鍵升級操作。

    • 若已建立觸發器(Trigger),需先刪除RDS執行個體中的觸發器,否則會導致遷移中斷。

    • RDS執行個體預設已開啟Binlog,您需確保參數binlog_row_image的值為full,否則預檢查階段會提示錯誤,且無法成功啟動資料同步任務。

    • DTS要求RDS執行個體的本地日誌(Binlog)至少保留7天以上,否則DTS可能因無法擷取本地日誌Binlog而導致任務失敗,極端情況下甚至可能會導致資料不一致或丟失。由於您所設定的本地日誌Binlog儲存時間低於DTS要求的時間進而導致的問題,不在DTS的SLA保障範圍內。

  • 若您的執行個體不滿足物理遷移(物理複製)的要求,但您希望通過該方式進行一鍵升級,您可以參考以下操作,使您的RDS執行個體符合物理遷移(物理複製)的要求,隨後再進行一鍵升級:

    • 針對RDS MySQL 5.6高可用版,核心小版本需為20190815或以上版本。

    • 針對RDS MySQL 5.7高可用版,核心小版本需為20200331或以上版本。

    說明
    • 您可以前往RDS控制台 > 執行個體詳情頁 > 基本資料頁面,在配置資訊地區查看RDS執行個體的小版本資訊。如果低於上述指定版本,您可以將核心小版本升級至最新版本

    • 物理遷移(物理複製)時,建議將本地日誌(Binlog)的保留時間長度設定為至少24小時或以上。

使用限制

若您的執行個體不滿足物理遷移(物理複製)的要求,系統將自動選擇邏輯遷移(DTS資料同步)的方式進行升級。該遷移方式存在以下使用限制:

  • 在DTS同步期間,不允許有除DTS外的資料寫入目標庫,否則會導致源庫與目標庫資料不一致。例如,有除DTS外的資料寫入目標庫時,使用DMS執行線上DDL變更,可能引起目標庫資料丟失。

  • DTS預設同步到目標資料庫中時會取消外鍵約束,因此來源資料庫的級聯、刪除等操作不會同步到目標資料庫。

  • 支援增量同步處理的SQL語句:

    操作類型

    SQL語句

    DML

    INSERTUPDATEDELETE

    DDL

    • ALTER TABLEALTER VIEW

    • CREATE FUNCTIONCREATE INDEXCREATE PROCEDURECREATE TABLECREATE VIEW

    • DROP INDEXDROP TABLE

    • RENAME TABLE

    • TRUNCATE TABLE

注意事項

遷移階段

說明

遷移前

遷移時

  • 建立PolarDB叢集時,全量資料同步需要一定的時間,耗時與資料量的大小相關。在此期間,叢集的狀態為建立中,請您耐心等待。

  • (可選)帶地址切換時,僅當RDS執行個體和PolarDB叢集同時存在的串連地址才支援相互切換,您需在切換前在叢集上建立好對應的串連地址,否則不會切換。

  • 串連地址的SSL加密狀態需保持一致:

    • 如果RDS執行個體的串連地址開啟了SSL加密,且您在切換時選擇帶地址切換並切換該地址,請確保PolarDB叢集對應的串連地址同樣已開啟SSL加密

    • 如果RDS執行個體的串連地址未開啟SSL加密,請確保PolarDB叢集對應的串連地址同樣未開啟SSL加密

  • 邏輯遷移(DTS資料同步)時,請勿手動釋放DTS資料同步任務。

費用說明

邏輯遷移(DTS資料同步)方式

邏輯遷移(DTS資料同步)方式中,會收取DTS資料同步任務以及目標PolarDB叢集的費用。

  • DTS資料同步任務:

    在升級流程中,系統將自動建立RDS執行個體和PolarDB叢集之間的DTS資料同步任務。費用資訊,請參見DTS計費概述

  • 目標PolarDB叢集:

    • 計費類型隨用隨付時,則叢集在整個升級流程中不計費,而是在如下操作後才開始正常隨用隨付:

      • 遷移完成後(包括升級流程中完成遷移操作)。

        說明
        • 遷移完成以中斷RDS執行個體和PolarDB叢集的同步鏈路為準。

        • 遷移需在30天內完成。到期後,將關閉遷移功能,RDS執行個體和PolarDB叢集均恢複讀寫狀態,脫離複製關係。

      • 停止遷移後(包括預校正失敗時的放棄遷移操作以及升級流程中取消遷移操作)。

        此時目標PolarDB叢集已建立,但一鍵升級流程已停止。若您不需要使用目標PolarDB叢集,請及時釋放叢集

    • 計費類型Serverless時,則在叢集的狀態變為運行中後,即開始計費。

    • 計費類型訂用帳戶時,則在建立叢集時需預支付對應的費用。

物理遷移(物理複製)方式

物理遷移(物理複製)方式中,整個升級流程不收取額外費用,僅收取目標PolarDB叢集的費用。

  • 計費類型隨用隨付時,則叢集在整個升級流程中不計費,而是在如下操作後才開始正常隨用隨付:

    • 遷移完成後(包括升級流程中完成遷移操作)。

      說明
      • 遷移完成以中斷RDS執行個體和PolarDB叢集的同步鏈路為準。

      • 遷移需在30天內完成。到期後,將關閉遷移功能,RDS執行個體和PolarDB叢集均恢複讀寫狀態,脫離複製關係。

    • 停止遷移後(包括預校正失敗時的放棄遷移操作以及升級流程中取消遷移操作)。

      此時目標PolarDB叢集已建立,但一鍵升級流程已停止。若您不需要使用目標PolarDB叢集,請及時釋放叢集

  • 計費類型Serverless時,則在叢集的狀態變為運行中後,即開始計費。

  • 計費類型訂用帳戶時,則在建立叢集時需預支付對應的費用。

如何使用

1. 遷移評估

為了保證遷移鏈路的順利進行和更好的遷移體驗,PolarDB提供了遷移評估功能,您可以在開始遷移前,對執行個體狀態、遷移任務依賴、執行個體屬性資訊等前提條件進行預校正,從而提前識別並處理可能影響遷移進度的前置條件,降低一鍵升級流程中的處理成本和資源成本。

2. 升級步驟

【推薦】控制台操作

以下為您簡要說明一鍵升級操作流程。詳細操作步驟說明,請參見升級步驟

  1. (可選)白名單檢查

    若您的RDS執行個體存在唯讀執行個體,且唯讀執行個體的白名單配置與主執行個體不一致。為確保唯讀執行個體的白名單能夠自動同步至PolarDB叢集,您需將唯讀執行個體的白名單合并至主執行個體的白名單配置中。

    說明

    PolarDB叢集的白名單配置適用於整個叢集,不支援對各個節點進行單獨配置。因此,完成遷移後,建議您對PolarDB叢集的白名單資料庫帳號許可權進行重新審查。

  2. 建立PolarDB叢集

    請前往PolarDB叢集購買頁面,選擇建立方式為從RDS遷移,並指定源RDS的版本與執行個體,以購買一個PolarDB叢集。購買完成後,系統將進行初始化、預檢查及全量資料同步等操作。在此期間,叢集的狀態為建立中,請您耐心等待。

    說明

    邏輯遷移(DTS資料同步)時,可能會出現預檢查失敗等錯誤情況,您需要根據錯誤資訊進行相應的處理。處理完成後,可以單擊繼續遷移以繼續一鍵升級流程。如果當前錯誤資訊的處理會影響您的線上業務,您可以選擇單擊放棄遷移以中止一鍵升級流程。

  3. (可選)地址補齊

    帶地址切換功能可以保留原有資料庫連接地址,使得應用程式無需修改任何串連配置即可切換至PolarDB叢集。但僅能切換RDS執行個體與PolarDB叢集同時存在的串連地址。

    1. 您可以根據實際情況選擇是否在PolarDB叢集上補齊相關串連地址。

    2. 檢查串連地址的SSL加密狀態,RDS執行個體與PolarDB叢集串連地址的SSL加密狀態需保持一致。

  4. 遷移切換

    PolarDB叢集的複寫延遲小於60秒時,您可以進行業務切換。單擊遷移切換,交換RDS執行個體和PolarDB叢集的讀寫狀態(即將RDS執行個體修改為唯讀,將PolarDB叢集修改為可讀可寫),同時更換資料複製方向(即將PolarDB叢集的新增資料同步到RDS執行個體)。

    重要
    • 在進行遷移切換時,如果您選擇使用帶地址切換,請務必仔細閱讀帶地址切換注意事項。此外,請注意,切換過程中業務可能會中斷1~5分鐘。

    • 遷移切換完成後,如果您探索資料存在異常或其他問題,可以進行遷移復原操作,以便迅速恢複到升級前的狀態。之後,您還可以繼續選擇取消遷移操作,恢複到切換之前的狀態。

  5. (可選)源執行個體DTS任務切換

    RDS執行個體存在關聯的DTS鏈路(非一鍵升級流程中邏輯遷移的DTS資料同步鏈路),您可使用此功能修改(替換)DTS同步或遷移任務的源或目標庫執行個體,平滑切換關聯業務。

  6. 完成遷移

    當業務資料移轉已完成,並且在PolarDB叢集上穩定運行後,若後續不再需要使用資料同步,您可以單擊完成遷移以結束一鍵升級流程。

  7. (可選)退訂或釋放RDS執行個體

    當業務已在PolarDB叢集上穩定運行且不再需要RDS執行個體時,可以進行退訂或釋放RDS執行個體。

API操作

以下為您簡要說明一鍵升級操作流程。詳細操作步驟說明,請參見升級步驟以及相關API文檔。

  1. (可選)白名單檢查

    若您的RDS執行個體存在唯讀執行個體,且唯讀執行個體的白名單配置與主執行個體不一致。為確保唯讀執行個體的白名單能夠自動同步至PolarDB叢集,您需將唯讀執行個體的白名單合并至主執行個體的白名單配置中。

    說明

    PolarDB叢集的白名單配置適用於整個叢集,不支援對各個節點進行單獨配置。因此,完成遷移後,建議您對PolarDB叢集的白名單資料庫帳號許可權進行重新審查。

  2. CreateDBCluster - 建立PolarDB叢集

    調用建立叢集API時,請求參數SourceResourceId需為源RDS執行個體所在地區,CreationOption需為MigrationFromRDS,且SourceResourceId需為源RDS執行個體ID。調用完成後,系統將進行初始化、預檢查及全量資料同步等操作。在此期間,叢集的狀態為建立中,請您耐心等待。

  3. 查詢PolarDB叢集的遷移狀態

    當返回參數MigrationStatusRDS2POLARDB_SYNCING時,表示系統已完成全量資料的同步,進行中增量同步處理。

    說明

    邏輯遷移(DTS資料同步)時,可能會出現預檢查失敗(參數MigrationStatusPRE_CHECK_FAIL)等錯誤情況,您需要根據錯誤資訊(參數Comment)進行相應的處理。處理完成後,可以在控制台單擊繼續遷移暫時沒有繼續遷移API以繼續一鍵升級流程。如果當前錯誤資訊的處理會影響您的線上業務,可以在控制台單擊放棄遷移以中止一鍵升級流程。

  4. ModifyDBClusterMigration - 切換遷移任務

    DescribeDBClusterMigration的返回參數DelayedSeconds小於60秒時,您可以進行業務切換。交換RDS執行個體和PolarDB叢集的讀寫狀態(即將RDS執行個體修改為唯讀,將PolarDB叢集修改為可讀可寫),同時更換資料複製方向(即將PolarDB叢集的新增資料同步到RDS執行個體)。

    重要
    • 在進行遷移切換時,如果您選擇使用帶地址切換,請務必仔細閱讀帶地址切換注意事項。此外,請注意,切換過程中業務可能會中斷1~5分鐘。

    • 遷移切換完成後,如果您探索資料存在異常或其他問題,可以調用ModifyDBClusterMigration復原遷移任務,以便迅速恢複到升級前的狀態。之後,您還可以繼續選擇調用CloseDBClusterMigration取消遷移,恢複到切換之前的狀態。

  5. (可選)ModifyDtsJobEndpoint - 修改DTS任務的源或目標庫執行個體

    RDS執行個體存在關聯的DTS鏈路(非一鍵升級流程中邏輯遷移的DTS資料同步鏈路),您可以修改(替換)DTS同步或遷移任務的源或目標庫執行個體,平滑切換關聯業務。

  6. CloseDBClusterMigration - 完成遷移

    當業務資料移轉已完成,並且在PolarDB叢集上穩定運行後,若後續不再需要使用資料同步,您可以結束一鍵升級流程。

  7. (可選)退訂或釋放RDS執行個體

    當業務已在PolarDB叢集上穩定運行且不再需要RDS執行個體時,可以進行退訂或釋放RDS執行個體。

3. 調整備份策略

RDS與PolarDB備份策略有所差異。遷移完成後,您可以在控制台上根據實際情況來修改備份策略

相關資訊

備份策略說明

RDS與PolarDB的備份策略有所差異,詳細說明如下所示:

  • 常規備份周期備份開始時間無差異PolarDB將預設沿用RDS的常規備份周期備份開始時間

  • 備份保留時間長度對應關係如下:

    • 如果RDS的備份保留時間長度小於或等於14天,則PolarDB的一級備份保留時間長度與RDS的備份保留時間長度一致。

    • 如果RDS的備份保留時間長度大於14天且小於等於30天,則PolarDB的一級備份保留時間長度固定為14天,同時開啟二級備份,且PolarDB的二級備份同地區保留時間長度固定為30天;如果RDS的備份保留時間長度大於30天,則PolarDB開啟二級備份且二級備份同地區保留時間長度與RDS的備份保留時間長度一致。

    • 如果RDS的備份為長期保留,則PolarDB的一級備份保留時間長度固定為14天,並開啟二級備份,且備份長期保留。

  • 如果RDS開啟了高頻備份,則PolarDB預設開啟高頻備份。高頻備份對應頻率如下:

    • 如果RDS的高頻備份頻率小於或等於120分鐘,則PolarDB的高頻備份頻率固定為120分鐘。

    • 如果RDS高頻備份頻率大於120分鐘且小於或等於180分鐘,則PolarDB高頻備份頻率固定為180分鐘。

    • 如果RDS備份頻率為其他頻率,則PolarDB的高頻備份頻率固定為240分鐘。

帶地址切換

一鍵升級流程中支援選擇帶地址切換功能,選擇後系統將自動交換RDS執行個體和PolarDB叢集上的串連地址,您無需在應用程式端修改任何配置即可自動連接到PolarDB叢集。

串連地址切換示意圖

以下列舉了在預設情況下,RDS執行個體與PolarDB叢集之間的串連地址切換對應關係。在實際切換過程中,您可以在控制台自行調整串連地址的切換對應關係。

image
說明

RDS執行個體的唯讀地址包括資料庫代理中的唯讀地址以及唯讀執行個體的串連地址。

注意事項

  • 帶地址切換功能不支援IPv6地址的切換。

  • 帶地址切換功能只會切換RDS執行個體和PolarDB叢集的串連地址網域名稱,虛擬交換器(vSwitch)、虛擬IP(VIP)等配置不會切換。

  • 僅當RDS執行個體和PolarDB叢集同時存在的串連地址才支援相互切換。預設情況下PolarDB叢集僅建立私網主地址和私網叢集地址,如果RDS執行個體包含2個以上的串連地址,您需在切換前在PolarDB叢集上建立好對應的串連地址,否則不會切換。

  • 使用帶地址切換功能時,RDS執行個體的主串連地址可以與PolarDB叢集的主地址或預設叢集地址進行切換。RDS執行個體的資料庫Proxy 位址可以與PolarDB叢集的預設叢集地址及自訂地址進行切換,同時也可以選擇不進行切換或切換多組。由於PolarDB叢集最多可建立7個叢集地址,因此最多僅支援7組RDS執行個體的資料庫Proxy 位址切換。

  • 暫不支援RDS叢集系列執行個體的叢集唯讀地址以及節點直連地址進行切換。

  • 使用帶地址切換功能交換私網地址前,請確保RDS執行個體和PolarDB叢集屬於同一個Virtual Private Cloud,否則切換後原有服務將無法串連。

  • 在增量同步處理完成後,PolarDB叢集狀態會變成運行中。在帶地址切換前,您可以進行參數配置、唯讀節點補齊、地址補齊等操作。

  • 切換串連地址網域名稱後,如果您需要使用DMS登入PolarDB叢集,請確認您配置了正確的叢集ID或串連串。

  • 切換串連地址網域名稱後,可能會存在DNS解析緩衝問題,在緩衝到期時間內可能會出現串連不上PolarDB叢集或PolarDB叢集只支援讀操作無法執行寫入操作等情況,建議您重新整理一下伺服器的DNS緩衝。

常見問題

為什麼在一鍵升級流程中,PolarDB叢集的記憶體使用量率會偏高?

在全量資料初始化階段,隨著資料的寫入,InnoDB引擎的記憶體緩衝池innodb_buffer_pool會主動式快取資料,以加速讀寫操作,這會引起整體記憶體使用量率上升。

在一鍵升級完成後,您可以在控制台適當調整記憶體緩衝區innodb_buffer_pool_size的大小,從而降低該部分的記憶體使用量率。