升級資料庫

本文將說明使用主控台和 API 在資料庫系統中升級資料庫的程序。

如需 Oracle Database 版本和軟體支援時間軸的相關資訊,請參閱 My Oracle Support 入口網站的 Release Schedule of Current Database Releases (Doc ID 742060.1)

必要的 IAM 原則

若要使用 Oracle Cloud Infrastructure,管理員必須透過原則授予您安全性存取權。不論您是使用主控台或 REST API 搭配 SDK、CLI 或其他工具,都必須具備此存取權。如果您收到一則訊息,指出您沒有權限或未經授權,請與您的管理員確認您所擁有的存取類型,以及應使用的區間

針對管理員:讓資料庫管理員管理 Oracle Cloud 資料庫系統中的原則可讓指定的群組對資料庫和相關資料庫資源執行所有動作。

如果您不熟悉原則,請參閱原則入門通用原則。如果您想要深入撰寫資料庫的原則,請參閱資料庫服務的詳細資訊

必備條件

請先複查下列先決條件,再升級資料庫系統中的 Oracle Database。

  • 資料庫必須為存檔模式。
  • 資料庫必須啟用倒溯。

如需詳細資訊,請參閱:

關於升級資料庫

請複查下列資料庫軟體版本升級相關資訊。

  • 您可以將 Oracle Database 19c 或 21c 升級成 Oracle Database 23ai。必須先將所有舊版的 Oracle Database 升級成 Oracle Database 19c。
  • 資料庫系統必須使用 Grid Infrastructure 軟體版本 23ai,才能升級成 Oracle Database 23ai。
  • 資料庫系統必須使用 Oracle Linux 8 (OL8) 升級成 Oracle Database 23ai。
  • 資料庫系統必須使用 Oracle Linux 7 (OL7) 才能升級成 Oracle Database 19c。
  • 如果您的資料庫系統使用自動儲存體管理 (ASM) 儲存體管理軟體,則系統必須使用 Oracle Grid Infrastructure 19c 或更新版本。
  • 對於資料庫系統上的資料庫不符合最低軟體版本需求,您只能在使用備份和還原作業將資料庫還原到使用 OL7 和 GI 19c 的資料庫系統之後進行升級。
  • 資料庫升級涉及資料庫停止工作時間。Oracle 建議您在排定資料庫升級時考慮此問題。
  • Oracle 建議您在升級之前,先備份資料庫並在測試系統上測試新的軟體版本。

    如需有關建立隨選手動備份的詳細資訊,請參閱隨選完整備份

  • Oracle 建議您在升級之前先執行資料庫的升級前置檢查作業,以便在計畫執行升級之前,發現任何需要降低的問題。前置檢查作業不會影響資料庫可用性。因此您可以隨時執行。
  • 進行自動備份作業時,無法執行升級作業。升級之前,Oracle 建議停用自動備份並執行手動備份。

    如需詳細資訊,請參閱設定資料庫的自動備份建立資料庫的隨選完整備份

  • 升級之後,您就無法使用升級前所進行的自動備份,將資料庫回復到較早的時間點。
  • 如果您要升級使用版本 11.2 軟體的資料庫,產生的版本 19c 資料庫將會是非容器資料庫 (非 CDB)。升級完成後,您可以使用主控台或 API,將產生的 19c 資料庫轉換成可插拔資料庫 (PDB)。

    如需有關執行前置檢查並將非 CDB 轉換為 PDB 的詳細資訊,請參閱 Convert a Non-Container Database To an Oracle Database 19c PDB

  • 對於使用一般可用的 Oracle Database 軟體版本進行升級,您不能使用 dbcli 公用程式執行升級。使用主控台執行資料庫升級。如果您的組織必須使用自訂的軟體版本進行升級,請洽詢 Oracle 以取得可與 dbcli 搭配使用的預先認證 URL 來下載軟體。只有在 Oracle 提供此預先認證要求 URL (PAR URL) 時,才能使用 dbcli 執行升級。

升級具有資料保全關聯的資料庫

對於與 Data Guard 關聯的資料庫,您必須一律先升級待命資料庫,再升級主要資料庫。您可以從主控台取得使用主控台建立的資料保全關聯升級選項。不過,如果您有資料庫沒有「資料保全」關聯,但手動設定為主要或待命資料庫,則下列適用於升級這類資料庫。

  • 資料庫服務將能夠偵測並識別資料庫是主要資料庫還是待命資料庫。
  • 對於資料庫版本 11.2 和 12.1,您必須先停用「資料保全」組態,才能進行升級。
  • 您必須先升級待命資料庫,然後再升級主要資料庫。
  • 資料庫服務會在您正在升級的資料庫上設定「保證回復點 (GRP)」。順利升級之後,將會自動從主要資料庫移除 GRP。不過,在待命資料庫上,您必須手動移除 GRP。

  • 升級時,將會變更 DB_HOME,待命資料庫會以掛載模式開啟,主要資料庫會以讀取 / 寫入模式開啟。

成功升級主要資料庫和待命資料庫之後,請執行下列動作。

  1. 對於資料庫版本 11.2 和 12.1,請在升級之前停用「資料保全」組態。
  2. 檢查待命資料庫的開啟模式。
  3. 刪除待命資料庫上建立的 GRP。

資料庫服務如何執行資料庫升級作業

在資料庫升級處理作業期間,會自動執行下列步驟:

  • 執行自動前置檢查。這可讓系統識別需要緩解的問題,以及停止升級作業。
  • 設定 GRP,讓它在升級失敗時執行倒溯。
  • 根據指定的 Oracle 發布或自訂資料庫軟體映像檔建立新的資料庫本位目錄。
  • 執行「資料庫升級輔助程式 (DBUA)」軟體,在資料庫上執行升級。對於「資料保全」關聯中的資料庫,此步驟只會在主要資料庫上執行。

倒回失敗的資料庫升級

附註:

倒回作業僅適用於 Oracle Database Enterprise Editions。

如果您的資料庫升級未順利完成,您可以選擇執行倒回。資料庫升級作業失敗之後,會在資料庫詳細資訊頁面顯示的標題訊息中提供倒回選項。

開始倒回之前,請先複查下列資訊。

  • 倒回會將您的資料庫重設為升級前的狀態。
  • 在升級期間與之後對資料庫進行的所有變更都會遺失。

對於「資料保全」關聯中的資料庫,必須根據下列步驟執行倒回。

  • 如果待命資料庫升級失敗,而您想要倒回,請執行下列步驟。
    1. 倒回待命資料庫。
  • 如果待命資料庫升級失敗,而您想要重試,請執行下列步驟。
    1. 倒回待命資料庫。
    2. 升級待命資料庫。
  • 如果主要資料庫升級失敗,而您想要倒回,請執行下列步驟。
    1. 倒回主要資料庫。
    2. 使用 CLI 倒回待命資料庫。主控台未提供回復成功升級的選項。

      如需有關 CLI 的詳細資訊,請參閱 Upgrade Rollback

    3. 在 11.2 和 12.1 資料庫版本上執行的主要資料庫上重新啟用「資料保全」組態。
    4. 順利倒回之後,請檢查「資料保全」組態。
  • 如果主要資料庫升級失敗且您想要重試,請執行下列步驟。
    1. 倒回主要資料庫。
    2. 在待命資料庫上執行倒溯至 GRP。

      如需 GRP 的詳細資訊,請參閱 Managing Guaranteed Restore Points

    3. 升級主要資料庫。

附註:

您必須先倒回主要資料庫,再倒回待命資料庫。

一般而言,當您使用主控台中的倒回選項倒回資料庫時,資料庫服務會自動處理下列步驟。

  1. 執行倒溯。
  2. 變更資料庫本位目錄。
  3. 刪除 GRP。

您只能使用 CLI 倒回成功的待命資料庫升級。

如需有關使用主控台執行倒回之步驟的詳細資訊,請參閱倒回失敗的資料庫升級

資料庫升級完成後

升級成功後,請注意下列事項:

  • Oracle 建議您使用 dbcli 公用程式移除舊的資料庫本位目錄。

    如需詳細資訊,請參閱 Dbhome Commands

  • 如果在升級之前停用自動備份,請檢查資料庫是否已啟用自動備份。
  • 編輯 Oracle Database COMPATIBLE 參數以反映新的 Oracle Database 版本。

    如需詳細資訊,請參閱何謂 Oracle Database 相容性?

  • 確定 Oracle 使用者主目錄中的 .bashrc 檔案已更新為指向 19c 資料庫本位目錄。
  • 如果您將資料庫從 Oracle Database 11。2 升級成 Oracle Database 19c,您可以將產生的非容器資料庫轉換成可插拔資料庫 (PDB)。您可以在轉換前執行前置檢查,以識別轉換作業之前的問題。
  • 必須刪除在待命資料庫上建立的 GRP。

管理保證的回復點

列出保證的回復點

您可以使用下列陳述式列出使用 V$RESTORE_POINT 檢視的所有 GRP。

SELECT NAME FROM V$RESTORE_POINT WHERE GUARANTEE_FLASHBACK_DATABASE='YES';

如需詳細資訊,請參閱 Oracle Database Backup and Recovery User's Guide 中的 Listing Restore Points Using the V$RESTORE_POINT view

正在刪除保證的回復點

您可以使用下列陳述式,使用 DROP RESTORE POINT 陳述式刪除 GRP。

DROP RESTORE POINT <grp name>;

其中,grp name 是必須刪除的 GRP 名稱。

如需詳細資訊,請參閱 Oracle Database Backup and Recovery User's Guide 中的 Dropping Restore Points

升級資料庫

檢視資料庫升級歷史記錄

倒回失敗的資料庫升級

必備條件

  • 升級倒回作業僅適用於未順利升級且目前處於「失敗」生命週期狀態的 Oracle Database Enterprise Edition 軟體。
  • 請先複查倒回失敗的資料庫升級主題中的資訊,再繼續進行下列步驟。

程序

請使用「OCI 主控台」執行下列步驟,將失敗的資料庫升級倒回先前的 Oracle Database 版本:

  1. 資料庫系統清單頁面上,選取包含您要使用之資料庫的資料庫系統。如果您需要尋找清單頁面或資料庫系統的協助,請參閱列出資料庫系統
  2. 資料庫頁籤上,選取您要使用的資料庫。
  3. 有失敗的升級時,資料庫詳細資訊頁面頂端將會顯示帶有倒回按鈕的標幟。
  4. 選取倒回並確認。

將非容器資料庫轉換成 Oracle Database 19c PDB

本主題適用於從 Oracle Database 11。2 升級至 Oracle Database 19c 的資料庫。在轉換處理作業期間,您會建立新的容器資料庫 (CDB),以保存轉換非 CDB 所建立的可插式資料庫 (PDB)。若要將非容器資料庫轉換成使用比 19c 更新版本之 Oracle Database 的 PDB,請依照本主題中的步驟進行,然後將產生的 19c 資料庫升級為更新的軟體版本,如升級資料庫中所述。

先決條件與建議的課堂練習

  • 您必須具有非 CDB 的 TDE 公事包密碼,才能將它轉換成 PDB。
  • Oracle 建議您先建立資料庫的手動備份,再嘗試轉換。如需詳細資訊,請參閱備份與復原基準資料庫服務
  • 「主控台」可讓您執行轉換作業的前置檢查,以確保轉換能順利完成。Oracle 建議在執行轉換前先執行前置檢查。若要執行前置檢查,請依照此程序中的步驟進行,然後選取前置檢查
  • 您可以在嘗試在來源資料庫系統上進行轉換之前,先複製資料庫系統並測試複製系統中的資料庫轉換作業。如需詳細資訊,請參閱複製資料庫系統

使用主控台將非 CDB 轉換為 PDB

  1. 資料庫系統清單頁面上,選取包含您要使用之資料庫的資料庫系統。如果您需要尋找清單頁面或資料庫系統的協助,請參閱列出資料庫系統
  2. 資料庫頁籤上,選取您要使用的資料庫。
  3. 在資料庫詳細資訊頁面的資料庫資訊頁籤中,複查資料庫架構欄位,確認資料庫是非容器資料庫。
  4. 在資料庫詳細資訊頁面的動作功能表中,選取轉換成 PDB
  5. 將非 CDB 資料庫轉換成可插拔資料庫面板的容器資料庫詳細資訊段落中提供下列資訊:
    • 容器資料庫名稱:提供將保留轉換之 PDB 的新 CDB 名稱。
    • 密碼:提供新 CDB 的密碼。
    • 確認密碼:重新輸入 CDB 密碼。
    • 使用管理員密碼作為 TDE 公事包:若要為 TDE 公事包設定個別密碼,請取消勾選此選項。取消勾選此選項後,會顯示下列欄位:
      • 輸入 TDE 公事包密碼:提供新 CDB 的 TDE 公事包密碼。
      • 確認 TDE 公事包密碼:重新輸入 TDE 公事包密碼。
  6. 非容器資料庫詳細資訊段落中,輸入您要轉換之非 CDB 的現有 TDE 公事包密碼。
  7. 若要執行前置檢查,請選取前置檢查;若要轉換資料庫,請選取轉換成 PDB

    附註:

    執行前置檢查之後,您便會回到主控台的資料庫詳細資訊頁面。若要開始轉換作業,請再次遵循本主題中的所有步驟,然後在最後一個步驟中選取轉換成 PDB 選項。

順利轉換資料庫之後,主控台中的資料庫詳細資訊頁面就會在資料庫架構欄位中顯示容器資料庫。此欄位位於資料庫詳細資訊頁面的資料庫資訊頁籤中。

將非 CDB 轉換為 PDB 的疑難排解提示

如果您的轉換作業未順利完成,您可以使用資料庫 cli (dbcli) 命令行公用程式來疑難排解問題。如需有關資料庫 CLI 的詳細資訊,請參閱 Oracle Database CLI Reference

疑難排解:

  1. 登入資料庫系統,如連線資料庫系統簡介中所述。
  2. 使用 dbcli list-jobs 命令來判斷失敗資料庫轉換作業的工作 ID 和狀態。
  3. 使用 dbcli describe-job 命令可顯示有關失敗資料庫轉換作業的詳細資訊。

根據 dbcli describe-job 命令所擷取的資訊,您可以嘗試解決導致轉換作業失敗的問題。如需在插入處理作業期間發生的錯誤 (將新的 PDB 插入新的 CDB 時),請洽詢 Oracle Support,取得在解決導致失敗的問題之後完成轉換的協助。

如果轉換作業失敗,主控台可能會在資料庫系統中顯示 2 個資料庫,或只顯示已終止的資料庫。資料庫系統最多可能需要 2 小時才能進行重設。如果主控台不再顯示 2 個資料庫或單一終止的資料庫,您可以再嘗試轉換一次。如果資料庫系統未自行重設並允許您重試,請洽詢 Oracle Support。