全部產品
Search
文件中心

ApsaraDB RDS:升級資料庫版本

更新時間:Mar 19, 2025

RDS SQL Server各個版本提供的能力有所不同,為獲得更優的效能和更強的擴充能力,您可按需將執行個體升級到更高的版本和系列。例如將執行個體大版本從SQL Server 2019 標準版升級至2022 標準版,將執行個體系列從基礎系列升級至高可用系列。

背景資訊

RDS SQL Server提供三種系列的執行個體,各系列執行個體支援的能力和各自優缺點都有所差異。

  • 基礎系列執行個體沒有備節點作為熱備份,因此當執行個體意外宕機或執行變更配置、版本升級等任務時,會出現較長時間的不可用。

  • 高可用系列執行個體有一個備執行個體,主備執行個體的資料會同步,當主執行個體故障無法訪問時,會自動切換到備用執行個體。同時高可用系列執行個體提供完整的產品功能,包括Auto Scaling、備份恢複、效能最佳化、讀寫分離等。

  • 叢集系列執行個體基於SQL Server源生AlwaysOn技術,實現計算與儲存分離,並且支援建立一個或多個唯讀執行個體實現讀寫分離,滿足大量資料庫讀取需求。

注意事項

  • 大版本、系列及規格升級後無法回退。升級規則如下:

    升級規則

    升級項

    升級規則

    升級資料庫大版本

    • 標準版 → 企業版

    • 標準版 → 企業叢集版

    • Web版 → 標準版

    • Web版 → 企業版

    • Web版 → 企業叢集版

    說明

    Web版需要先升級到標準版,再從標準版升級到企業版或企業叢集版。

    升級資料庫系列

    • 基礎系列 → 高可用系列

    • 基礎系列 → 叢集系列

    • 高可用系列 → 叢集系列

    升級資料庫規格

    • 共用規格 → 通用規格

    • 共用規格 → 獨享規格

    • 通用規格 → 獨享規格

    說明
    • 高可用共用規格不能直接升級為叢集系列獨享規格。

    • 僅支援向同規格或高規格進行升級,高規格升級規則參照上述說明。

    • 不支援共用規格直接升級共用規格。

    警告

    由於升級後無法回退,建議您升級前先建立隨用隨付或Serverless的目標執行個體測試相容性。

  • 在資料庫版本升級期間,請勿對資料庫執行任何中繼資料修改操作,執行這些操作可能會導致升級後的資料不一致。中繼資料修改操作包括但不限於添加資料庫、刪除資料庫、修改資料庫的復原模式等。

限制條件

符合以下情況的執行個體暫不支援升級資料庫版本:

升級影響

  • 升級操作一旦開始不可取消,且升級完成後無法回退。

  • 升級前後執行個體名稱、訪問連接埠、標籤、資料庫帳號等原有設定均不會發生變化。

  • 升級所需時間取決於執行個體的資料量等,詳情請參見本文常見問題

  • 執行個體升級過程中涉及網路切換等,通常會有20分鐘內的不可服務時間。詳情請參見本文常見問題,請確保應用程式具備自動重連機制。

  • 升級會造成虛擬IP(VIP)的變更,請盡量在您的應用程式中使用串連地址進行串連,不要使用IP地址。

  • 請及時清理用戶端DNS緩衝。用戶端採用JVM的應用,建議將JVM配置中的TTL設定為不超過60秒,可確保在串連地址的VIP地址發生變更時,應用程式可以通過重新查詢DNS來接收和使用資源的新VIP地址。

    說明

    下列JVM中設定TTL的方法可供參考:

    • 為所有使用JVM的應用程式設定TTL:將$JAVA_HOME/jre/lib/security/java.security檔案中的networkaddress.cache.ttl參數值設定為60。

    • 僅為本地應用程式設定TTL:在首次調用InetAddress.getByName()前,即建立任何網路連接之前,在應用程式的初始化代碼中設定networkaddress.cache.ttl java.security.Security.setProperty("networkaddress.cache.ttl" , "60");

  • 如果有正在執行的DTS任務,升級後,需要重新設定並啟動相應的DTS任務。

費用說明

升級版本的費用,請參見變更配置

操作步驟

  1. 訪問RDS執行個體列表,在上方選擇地區,然後單擊目標執行個體ID。

  2. 基本資料頁面的配置資訊地區,單擊升級版本,在彈出的對話方塊中單擊確認

    說明

    如果未找到該入口,請確認執行個體是否符合升級的要求

    image.png

  3. 升级引擎版本頁面修改配置,重點配置項說明如下,其他配置項說明請參見操作步驟

    說明

    部分執行個體升級時,在版本和系列選擇上可能存在限制。具體詳情,請參見本文注意事項和限制條件。

    參數名稱

    說明

    升级到版本

    選擇不同的目標版本,對應的产品系列实例规格選項也會變化,具體請參見升級規則

    产品系列

    選擇目標系列

    • 基礎系列:單節點,計算與儲存分離。

    • 高可用系列:一主一備的經典高可用架構,各方面表現均衡。

    • 叢集系列:一主多備的高可用架構,備執行個體可訪問。

    实例规格

    每種規格都有對應的CPU核心數、記憶體、最大串連數和最大IOPS。

    切换时间

    • 数据迁移结束后立即切换:立刻進行遷移並切換。

    • 可维护时间内进行切换:立刻進行遷移並在可維護時間段內進行切換。

  4. 勾選服務條款,單擊去支付

  5. 在彈出的對話方塊中,單擊確認

    此時原執行個體運行狀態變更為升降配中 > 跨網路升級中,當執行個體的運行狀態變更為運行中即代表升級完成。具體時間取決於資料量,請耐心等待。

常見問題

大版本升級期間,是否能變更執行個體?例如變更執行個體規格?

大版本升級期間不支援變更執行個體,必須在大版本升級完成後,才能進行其他動作。

大版本是否支援自動升級?

暫不支援自動升級資料庫大版本。

大版本升級的時間預估需要多久?

預估時間

通常情況下,升級執行個體大版本所需的預估時間範圍如下。需注意,以下備份和恢複速度均基於未壓縮的資料大小。

說明

由於Web版本的執行個體不支援備份壓縮,因此備份效率會有所影響,備份與恢複速度可能降至100 GB/小時以下。

操作

是否必須

預計消耗時間

注意事項

建立與配置新執行個體

必須

10~15分鐘

所需時間根據升級時所選擇的產品系列和規格而定。

對執行個體進行全量備份

非必須

200 GB/小時

  • 基於全量備份策略,若36小時內執行個體未進行過全量備份,大版本升級過程中執行個體將進行一次全量備份,以平衡交易記錄與全量備份的時間。

    建議在升級大版本前選擇適宜時間手動執行全量備份,或選擇在系統自動全量備份結束後的36小時內發起大版本升級任務,以減少升級過程所需總時間長度。

  • 備份速度可能因地區和時間段的不同而有所變化。

  • 為了獲得更準確的備份和恢複效能,請參考最近一次全量備份的資料量和備份時間。

在目標執行個體恢複全量備份

必須

200 GB/小時

在源執行個體進行增量交易記錄備份

必須

200 GB/小時

進行增量記錄備份前後,可能存在2分鐘的額外損耗(例如備份準備、收尾、資源分派等)。

在目標執行個體應用增量交易記錄備份

必須

200 GB/小時

應用增量記錄備份前後,可能存在2分鐘的額外損耗(例如備份一致性驗證等)。

將資料庫恢複上線

必須

正常2分鐘內

  • 資源消耗:應用增量交易記錄是資源密集型操作。小規格執行個體(例如2核4 GB)可能會因交易記錄數量較多而導致恢複速度下降。

  • 資料庫恢複加速選項:RDS SQL Server 2019及更高版本提供加速資料庫恢複(Accelerated Database Recovery)選項,可能會減少資料庫恢複上線步驟所需時間。具體請根據微軟官方文檔綜合評估是否啟用此選項。

網路切換等待、網路連接遷移

必須

10分鐘

預估樣本

測試執行個體:執行個體規格為4核8 GB,資料量大小為600 GB。

  • 建立與配置新執行個體:預計耗時12分鐘。

  • 全量備份(非必須):預計耗時3小時。(600 GB / 200 GB每小時)

  • 恢複全量備份至目標執行個體:預計耗時3小時。(600 GB / 200 GB每小時)

  • 在源執行個體進行增量交易記錄備份:預計耗時5分鐘。(10 GB / 200 GB每小時)+ 2分鐘額外損耗 = 5分鐘

  • 在目標執行個體應用增量交易記錄備份:預計耗時5分鐘。(10 GB / 200 GB每小時)+ 2分鐘額外損耗 = 5分鐘

  • 將資料庫恢複上線:預計耗時2分鐘內。

  • 網路切換與遷移:預計耗時10分鐘。

綜上,在此樣本中,若執行個體36小時內未進行過全量備份,總耗時預計為6小時34分鐘左右,否則需要3小時34分鐘左右。

升級建議

  • 維護視窗規劃:建議在系統負載較低的時段進行升級操作,以最小化對業務的影響。

  • 長事務問題:升級過程中應避免執行長時間啟動並執行事務操作,例如建立或重建索引、資料歸檔等,以免延長資料庫恢複上線步驟的時間。

在跨時區情境下,如何正確設定執行個體升級時的切換時間?

  • 情境樣本:使用者本人位於杜拜地區,使用者RDS SQL Server執行個體設定的時區為印度時間(執行個體所在地區為新加坡)。在這種複雜的跨時區情況下,如何設定執行個體升級時的切換時間,以避免業務中斷。

  • 樣本目標:使用者計劃在印度時間的2024年5月11日02:00進行RDS執行個體的升級切換。

  • 解決方案:將RDS SQL Server執行個體印度時區時間,轉換為杜拜地區的瀏覽器時間即可(此情境下無需考慮RDS執行個體所在地區)。即在本樣本中,若使用者計劃在RDS執行個體的印度時間2024年5月11日02:00進行升級切換,那麼使用者應在自己所在的杜拜時間(瀏覽器顯示時間),即2024年5月11日00:30,登入到RDS控制台設定執行個體升級切換時間。

  • 具體轉化方法:

    1. 將印度時間(2024年5月11日02:00)轉換為UTC時間:印度時間比UTC時間早5小時30分鐘,因此轉換後UTC時間為2024年5月10日20:30。

    2. 將UTC時間(2024年5月10日20:30)轉換為杜拜時間:UTC時間比杜拜時間晚4小時,因此轉換後杜拜時間為2024年5月11日00:30。

相關API

您也可以通過API升級資料庫大版本,請參見ModifyDBInstanceSpec - 變更RDS執行個體