在 RDS for Oracle 中开启扩展数据类型
Amazon RDS for Oracle 支持扩展数据类型。对于扩展数据类型,VARCHAR2
、NVARCHAR2
和 RAW
数据类型的最大大小为 32767 字节。要使用扩展数据类型,请将 MAX_STRING_SIZE
参数设置为 EXTENDED
。有关更多信息,请参阅 Oracle 文档中的扩展数据类型
如果您不希望使用扩展数据类型,请将 MAX_STRING_SIZE
参数设置为 STANDARD
(默认值)。在这种情况下,VARCHAR2
和 NVARCHAR2
数据类型的大小限制为 4,000 字节,RAW 数据类型的大小限制为 2,000 字节。
您可以在新的或现有的数据库实例上开启扩展数据类型。对于新的数据库实例,在开启扩展数据类型时,数据库实例的创建时间通常较长。对于现有的数据库实例,数据库实例在转换过程中不可用。
扩展数据类型的注意事项
为数据库实例启用扩展数据类型时,请考虑以下几点:
-
在为新的或现有的数据库实例开启扩展数据类型时,必须重启实例才能使更改生效。
-
在开启扩展数据类型之后,无法将数据库实例改回为使用数据类型的标准大小。如果将
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
并重新引导数据库实例。
为新数据库实例开启扩展数据类型
当您创建将 MAX_STRING_SIZE
设置为 EXTENDED
的数据库实例时,该实例将显示 MAX_STRING_SIZE
设置为默认 STANDARD
。重启实例以启用更改。
为新数据库实例开启扩展数据类型
-
在参数组中将
MAX_STRING_SIZE
参数设置为EXTENDED
。要设置该参数,您可以创建新的参数组或修改现有的参数组。
有关更多信息,请参阅 Amazon RDS 的参数组。
-
创建新的 RDS for Oracle 数据库实例。
有关更多信息,请参阅 创建 Amazon RDS 数据库实例。
-
将其
MAX_STRING_SIZE
设置为EXTENDED
的参数组与数据库实例相关联。有关更多信息,请参阅 创建 Amazon RDS 数据库实例。
-
重新引导数据库实例以使参数更改生效。
有关更多信息,请参阅 重启中的数据库实例。
为现有数据库实例开启扩展数据类型
在修改数据库实例以开启扩展数据类型时,RDS 将转换数据库中的数据以使用扩展的大小。参数更改后,下次重启数据库时会发生转换和停机。数据库实例在转换期间不可用。
转换数据所需的时间取决于数据库实例类、数据库大小和最后一个数据库快照的时间。为减少停机时间,请考虑就在重启前拍摄快照。这缩短了转换工作流程期间执行的备份的时间。
注意
在开启扩展数据类型后,您无法在转换期间执行时间点还原以还原到某个时间。您可以还原到紧靠转换前或转换后的时间。
为现有数据库实例开启扩展数据类型
-
拍摄数据库的快照。
如果在数据库中具有无效的对象,Amazon RDS 将尝试重新编译这些对象。如果 Amazon RDS 无法重新编译无效的对象,转换为扩展数据类型可能会失败。如果在转换过程中出现问题,您可以使用快照还原数据库。请始终在转换之前检查无效的对象,并修复或删除这些无效的对象。对于生产数据库,我们建议先在数据库实例的副本上测试转换过程。
有关更多信息,请参阅“为 Amazon RDS 的单可用区数据库实例创建数据库快照”。
-
在参数组中将
MAX_STRING_SIZE
参数设置为EXTENDED
。要设置该参数,您可以创建新的参数组或修改现有的参数组。
有关更多信息,请参阅“Amazon RDS 的参数组”。
-
修改数据库实例以将其与
MAX_STRING_SIZE
设置为EXTENDED
的参数组相关联。有关更多信息,请参阅“修改 Amazon RDS 数据库实例”。
-
重新引导数据库实例以使参数更改生效。
有关更多信息,请参阅“重启中的数据库实例”。