

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 在 RDS for Oracle 中開啟擴充資料類型
<a name="Oracle.Concepts.ExtendedDataTypes"></a>

Amazon RDS for Oracle 支援擴充資料類型。使用擴充資料類型，`VARCHAR2`、`NVARCHAR2` 和 `RAW` 資料類型的大小上限是 32,767 個位元組。若要使用擴充資料類型，請將 `MAX_STRING_SIZE` 參數設為 `EXTENDED`。如需詳細資訊，請參閱 Oracle 文件中的[擴充資料類型](https://docs.oracle.com/database/121/SQLRF/sql_elements001.htm#SQLRF55623)。

如果不要使用擴充資料類型，請將 `MAX_STRING_SIZE` 參數保持設為 `STANDARD` (預設值)。在此情況下，`VARCHAR2` 和 `NVARCHAR2` 資料類型的大小限制為 4,000 個位元組，而 RAW 資料類型的大小限制為 2,000 個位元組。

您可以在新的或現有的資料庫執行個體上執行擴充資料類型。對於新的資料庫執行個體，開啟擴充資料類型時，資料庫執行個體建立時間一般較長。對於現有的資料庫執行個體，在轉換期間無法使用資料庫執行個體。

## 擴充資料類型的考量
<a name="Oracle.Concepts.ExtendedDataTypes.considerations"></a>

針對資料庫執行個體啟用擴充資料類型時，請考慮下列事項：
+ 當您為新的或現有的資料庫執行個體開啟擴充資料類型時，必須將執行個體重新開機，變更才會生效。
+ 開啟擴充資料類型後，即無法將資料庫執行個體變回使用資料類型的標準大小。如果您將 `MAX_STRING_SIZE` 參數設回 `STANDARD`，將會導致 `incompatible-parameters` 狀態。
+ 您還原使用擴充資料類型的資料庫執行個體時，必須將具有 `MAX_STRING_SIZE` 參數的參數群組設為 `EXTENDED`。在還原期間，如果您指定預設參數群組，或指定 `MAX_STRING_SIZE` 設為 `STANDARD` 的其他任何參數群組，則會產生 `incompatible-parameters` 狀態。
+ 資料庫執行個體狀態由於 `incompatible-parameters` 設定而成為 `MAX_STRING_SIZE` 時，在您將 `MAX_STRING_SIZE` 參數設為 `EXTENDED` 並重新啟動資料庫執行個體之前，都無法使用資料庫執行個體。

## 針對新的資料庫執行個體開啟擴充資料類型
<a name="Oracle.Concepts.ExtendedDataTypes.CreateDBInstance"></a>

若您建立資料庫執行個體時將 `MAX_STRING_SIZE` 設定為 `EXTENDED`，執行個體會顯示 `MAX_STRING_SIZE` 設定為預設值 `STANDARD`。將執行個體重新開機以啟用變更。

**針對新的資料庫執行個體開啟擴充資料類型**

1. 在參數群組中，將 `MAX_STRING_SIZE` 參數設為 `EXTENDED`。

   若要設定參數，可以建立新的參數群組，也可以修改現有的參數群組。

   如需詳細資訊，請參閱[Amazon RDS 的參數群組](USER_WorkingWithParamGroups.md)。

1. 建立新的 RDS for Oracle 資料庫執行個體。

   如需詳細資訊，請參閱[建立 Amazon RDS 資料庫執行個體](USER_CreateDBInstance.md)。

1. 將 `MAX_STRING_SIZE` 設為 `EXTENDED` 的參數群組與資料庫執行個體建立關聯。

   如需詳細資訊，請參閱[建立 Amazon RDS 資料庫執行個體](USER_CreateDBInstance.md)。

1. 為了使參數變更生效，請重新啟動資料庫執行個體。

   如需詳細資訊，請參閱[在資料庫執行個體](USER_RebootInstance.md)。

## 針對現有的資料庫執行個體開啟擴充資料類型
<a name="Oracle.Concepts.ExtendedDataTypes.ModifyDBInstance"></a>

修改資料庫執行個體以開啟擴充資料類型時，RDS 會將資料庫中的資料轉換為使用擴充大小。當您下次在參數變更之後重新啟動資料庫時，就會發生轉換和停機。在轉換期間無法使用資料庫執行個體。

轉換資料所需的時間量取決於資料庫執行個體類別、資料庫大小，以及最後一個資料庫快照的時間。若要減少停機時間，請考慮在重新開機之前立即建立快照。這樣可以縮短轉換工作流程期間備份的時間。

**注意**  
開啟擴充資料類型後，無法在轉換期間執行時間的時間點還原。您可還原到緊接在轉換前或轉換後的時間。

**針對現有的資料庫執行個體開啟擴充資料類型**

1. 擷取資料庫的快照。

   如果資料庫有無效的物件，Amazon RDS 會嘗試重新編譯這些物件。如果 Amazon RDS 無法重新轉譯無效的物件，擴充資料類型的轉換可能會失敗。如果轉換發生問題，快照可讓您還原資料庫。務必在轉換前檢查無效的物件，並修正或捨棄無效的物件。對於生產資料庫，建議先對於其中一個資料庫執行個體複本測試轉換程序。

   如需更多詳細資訊，請參閱 [為 Amazon RDS 的單一可用區域資料庫執行個體建立資料庫快照](USER_CreateSnapshot.md)。

1. 在參數群組中，將 `MAX_STRING_SIZE` 參數設為 `EXTENDED`。

   若要設定參數，可以建立新的參數群組，也可以修改現有的參數群組。

   如需更多詳細資訊，請參閱 [Amazon RDS 的參數群組](USER_WorkingWithParamGroups.md)。

1. 修改資料庫執行個體，以便與 `MAX_STRING_SIZE` 設為 `EXTENDED` 的參數群組產生關聯。

   如需更多詳細資訊，請參閱 [修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

1. 為了使參數變更生效，請重新啟動資料庫執行個體。

   如需更多詳細資訊，請參閱 [在資料庫執行個體](USER_RebootInstance.md)。