Amazon Relational Database Service
用户指南 (API 版本 2014-10-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

修改运行 Oracle 数据库引擎的数据库实例

可以更改数据库实例的设置来完成添加额外存储或更改数据库实例类等任务。在本主题中,您将了解如何修改 Amazon RDS Oracle 数据库实例,以及有关 Oracle 实例的设置。我们建议您在修改生产实例之前在测试实例上测试所有更改,以便完全了解每项更改的影响。在升级数据库版本时,此练习尤其重要。

在修改数据库实例设置后,您可以立即应用更改,也可以在数据库实例的下一维护时段内应用更改。某些修改通过重新启动数据库实例导致中断。

除了按下文中直接所述修改 Oracle 实例之外,您还可以按照本主题结尾中修改 Oracle sqlnet.ora 参数的所述,更改 Oracle 数据库实例的 sqlnet.ora 参数的设置。

AWS 管理控制台

要修改 Oracle 数据库实例,

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

  2. 在导航窗格中,选择 Instances,然后选择您希望修改的数据库实例。

  3. 选择实例操作,然后选择修改。此时会显示修改数据库实例页面。

  4. 根据需要更改任意设置。有关每项设置的信息,请参阅 适用于 Oracle 数据库实例的设置

  5. 当所有更改都达到您的要求时,选择继续并查看修改摘要。

  6. 要立即应用更改,请选择立即应用。选择此选项在某些情况下可导致中断。有关更多信息,请参阅 立即应用的影响

  7. 在确认页面上,检查您的更改。如果更改正确无误,请选择 Modify DB Instance 保存更改。

    或者,选择 Back 编辑您的更改,或者选择 Cancel 取消更改。

CLI

要使用 AWS CLI 修改 Oracle 数据库实例,请调用 modify-db-instance 命令。指定数据库实例标识符,以及您要修改的设置参数。有关每个参数的信息,请参阅适用于 Oracle 数据库实例的设置

以下代码修改 mydbinstance,将备份保留期设置为 1 周 (7 天)。代码使用 --no-auto-minor-version-upgrade 禁用次要版本自动升级。要允许自动次要版本升级,请使用 --auto-minor-version-upgrade。将在下一维护时段使用 --no-apply-immediately 应用这些更改。使用 --apply-immediately 可立即应用更改。有关更多信息,请参阅 立即应用的影响

针对 Linux、OS X 或 Unix:

aws rds modify-db-instance \ --db-instance-identifier mydbinstance \ --backup-retention-period 7 \ --no-auto-minor-version-upgrade \ --no-apply-immediately

对于 Windows:

aws rds modify-db-instance ^ --db-instance-identifier mydbinstance ^ --backup-retention-period 7 ^ --no-auto-minor-version-upgrade ^ --no-apply-immediately

API

要使用 Amazon RDS API 修改 Oracle 数据库实例,请调用 ModifyDBInstance 操作。指定数据库实例标识符,以及您要修改的设置参数。有关每个参数的信息,请参阅适用于 Oracle 数据库实例的设置

以下代码通过将备份保留期设置为 1 周 (7 天) 并禁用自动次要版本升级来修改 mydbinstance。这些更改将在下一维护时段内应用。

https://rds.amazonaws.com/ ?Action=ModifyDBInstance &ApplyImmediately=false &AutoMinorVersionUpgrade=false &BackupRetentionPeriod=7 &DBInstanceIdentifier=mydbinstance &SignatureMethod=HmacSHA256 &SignatureVersion=4 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20131016/us-west-1/rds/aws4_request &X-Amz-Date=20131016T233051Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=087a8eb41cb1ab0fc9ec1575f23e73757ffc6a1e42d7d2b30b9cc0be988cff97

适用于 Oracle 数据库实例的设置

下表包含有关哪些设置可修改、哪些设置无法修改、何时可应用更改以及更改是否会导致数据库实例停机的详细信息。

设置 设置描述 发生更改时 停机说明

分配的存储空间

要分配给数据库实例的存储空间大小,单位为 GB。您只能增加分配的存储,而不能减少分配的存储。

如果数据库实例状态为storage-optimization或者在过去 6 小时内修改了为数据库实例分配的存储,则无法修改分配的存储。

允许的最大存储取决于存储类型。有关更多信息,请参阅 数据库实例存储

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

无停机时间。在更改期间,性能可能降低。

自动次要版本升级

如果在当前引擎版本中发现严重问题或安全漏洞时,您希望数据库实例自动接收次要引擎版本升级,请选择。只有在计划的维护时段内,才会安装升级。当没有与当前引擎版本关联的严重问题或安全漏洞时,适用于 Oracle 的 Amazon RDS 不会自动升级次要引擎版本。您可以使用数据库引擎版本字段,手动将数据库实例升级到更高的次要版本。

一些选项 (如 Oracle Locator、Oracle Multimedia 和 Oracle Spatial) 需要您启用自动次要版本升级。

如果您想要禁用自动次要版本升级,且不使用需要升级的 Oracle 选项,请选择

如果您使用的是需要自动次要版本升级的 Oracle 选项,则无法在您修改选项组以删除选项的同时禁用自动次要版本升级。不过,您可以在从选项组中删除需要其的所有 Oracle 选项之后,禁用自动次要版本升级。

备份保留期

自动备份的保留天数。要禁用自动备份,请将备份保留期设置为 0。

有关更多信息,请参阅 使用备份

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,并且您将该设置从一个非零值更改为另一个非零值,则将尽快地异步应用更改。否则,更改在下一维护时段内生效。

如果从 0 改为非零值或从非零值改为 0,则会发生服务中断。

备份时段

数据库的自动备份时间范围。备份时段是开始时间 (采用通用协调时间 (UTC)) 和持续时间 (以小时为单位)。

有关更多信息,请参阅 使用备份

更改会尽快异步应用。

证书颁发机构

要使用的证书。

复制标签给快照

如果您有任何数据库实例标签,此选项将在您创建数据库快照时复制这些标签。

有关更多信息,请参阅 标记 Amazon RDS 资源

数据库端口

要用于访问数据库的端口。

端口值不能与为数据库实例选项组中的选项指定的任何端口值相同。

更改立即发生。此设置忽略立即应用设置。

数据库实例立即重新启动。

数据库引擎版本

要使用的 Oracle 数据库引擎的版本。在您升级生产数据库实例之前,我们建议您在测试实例上测试升级过程,以验证其持续时间以及您的应用程序。

我们建议不升级微型数据库实例,因为它们的 CPU 资源有限,升级过程可能需要几个小时才能完成。升级存储较小 (10-20 GiB) 的微型数据库实例的替代方法是使用 Data Pump 复制数据,我们也同样建议您在迁移生产实例之前对此进行测试。

有关更多信息,请参阅 升级 Oracle 数据库引擎

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

在此更改期间发生服务中断。

数据库实例类

您要使用的数据库实例类。

有关更多信息,请参阅 数据库实例类Oracle 的数据库实例类支持

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

在此更改期间发生服务中断。

数据库实例标识符

数据库实例标识符。此值以一个小写字符串存储。

有关数据库实例重命名效果的更多信息,请参阅重命名数据库实例

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

在此更改期间发生服务中断。数据库实例重启。

数据库参数组

要与数据库实例关联的参数组。

有关更多信息,请参阅 使用数据库参数组修改 Oracle sqlnet.ora 参数

参数组更改会立即发生。但是,参数更改仅在手动重新启动数据库实例而未执行故障转移时发生。

有关更多信息,请参阅 重启数据库实例

在此更改期间,不会出现中断。但是,参数更改仅在手动重新启动数据库实例而未执行故障转移时发生。

增强监测

启用增强监测可启用您的数据库实例在其上运行的操作系统的实时指标收集。

有关更多信息,请参阅 增强监测

许可模式

license-included 可使用 Oracle 的一般许可协议。bring-your-own-license 可使用您的现有 Oracle 许可证。

有关更多信息,请参阅 Oracle 许可

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

在此更改期间发生服务中断。

维护时段

进行系统维护的时间范围。维护系统包括升级 (如果适用)。维护时段是开始时间 (采用通用协调时间 (UTC)) 和持续时间 (以小时为单位)。

如果将时段设置为当前时间,则当前时间与该时段结束之间必须相隔至少 30 分钟以确保应用所有待处理的更改。

有关更多信息,请参阅 Amazon RDS 维护时段

更改立即发生。此设置忽略立即应用设置。

如果有一个或多个待处理的操作导致服务中断,并且维护时段经过更改,加入了当前时间,则立即应用这些待处理的操作并会出现中断。

多可用区部署

如果在多个可用区部署数据库实例,则为 Yes;否则为 No

有关更多信息,请参阅 区域和可用区

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

新建主密码

您的主用户密码。密码必须包含 8 到 30 个字母数字字符。

更改会尽快异步应用。此设置忽略立即应用设置。

选项组

要与数据库实例关联的选项组。

有关更多信息,请参阅 使用选项组

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

如果您将 APEX 选项添加到现有数据库实例,则在数据库实例自动重新启动时会出现短暂中断。

如果您将 OEM 选项添加到现有数据库实例,此更改可导致在较短时间 (小于一秒) 内拒绝新连接。不会中断现有连接。

公开可用性

Yes 为数据库实例提供公有 IP 地址,这表示可在 VPC 外部访问它。要可供公开访问,数据库实例还必须在 VPC 的公有子网中。No 让数据库实例只在 VPC 内部是可访问的。

有关更多信息,请参阅 从 Internet 隐藏 VPC 中的数据库实例

更改立即发生。此设置忽略立即应用设置。

安全组

要与数据库实例关联的安全组。

有关更多信息,请参阅 使用数据库安全组 (EC2-Classic 平台)

更改会尽快异步应用。此设置忽略立即应用设置。

存储类型

要使用的存储类型。

有关更多信息,请参阅 Amazon RDS 存储类型

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

进程开始后,以下更改均会导致短暂中断。此后,在更改发生时,您可以正常使用数据库。

  • General Purpose (SSD) 更改为 Magnetic

 

  • General Purpose (SSD) 更改为 Provisioned IOPS (SSD) (如果数据库实例为单可用区)。多可用区数据库实例没有中断。

 

  • Magnetic 更改为 General Purpose (SSD)

 

  • Magnetic 更改为 Provisioned IOPS (SSD)

 

  • Provisioned IOPS (SSD) 更改为 Magnetic

     

 

  • Provisioned IOPS (SSD) 更改为 General Purpose (SSD) (如果数据库实例为单可用区)。多可用区数据库实例没有中断。

 

子网组

数据库实例的子网组。您可以使用此设置将数据库实例移动到其他 VPC。 如果数据库实例未在 VPC 中,可以使用此设置将数据库实例移至 VPC 中。

有关更多信息,请参阅 将不在 VPC 中的数据库实例移动到 VPC 中

如果立即应用设置为 true,则更改立即生效。

如果立即应用设置为 false,则更改在下一维护时段内生效。

在此更改期间发生服务中断。数据库实例重启。

修改 Oracle sqlnet.ora 参数

sqlnet.ora 文件包括在 Oracle 数据库服务器和客户端上配置 Oracle Net 功能的参数。使用 sqlnet.ora 文件中的参数,您可以修改传入和传出数据库的连接的属性。

有关可能需要设置 sqlnet.ora 参数的原因的更多信息,请参阅 Oracle 文档中的对配置文件参数进行配置

设置 sqlnet.ora 参数

Amazon RDS Oracle 参数组包含一个 sqlnet.ora 参数子集。您可以使用与设置其他 Oracle 参数相同的方法来设置它们。sqlnetora. 前缀标识哪些参数是 sqlnet.ora 参数。例如,在 Amazon RDS 的 Oracle 参数组中,default_sdu_size sqlnet.ora 参数为 sqlnetora.default_sdu_size

有关管理参数组和设置参数值的信息,请参阅 使用数据库参数组

支持的 sqlnet.ora 参数

Amazon RDS 支持以下 sqlnet.ora 参数。对动态 sqlnet.ora 参数的更改立即生效。

参数 有效值 静态/动态 描述

sqlnetora.default_sdu_size

Oracle 11g – 51265535

Oracle 12c – 5122097152

动态

会话数据单位 (SDU) 大小 (字节)。

SDU 是一次性放入缓冲区并通过网络发送的数据量。

sqlnetora.diag_adr_enabled

ONOFF

动态

一个值,用于启用或禁用自动诊断存储库 (ADR) 跟踪。

ON 指定使用 ADR 文件跟踪。

OFF 指定使用非 ADR 文件跟踪。

sqlnetora.recv_buf_size

8192268435456

动态

用于会话接收操作的缓冲区空间限制,支持 TCP/IP、使用 SSL 的 TCP/IP 以及 SDP 协议。

sqlnetora.send_buf_size

8192268435456

动态

用于会话发送操作的缓冲区空间限制,支持 TCP/IP、使用 SSL 的 TCP/IP 以及 SDP 协议。

sqlnetora.sqlnet.expire_time

01440

动态

发送检查以验证客户端/服务器连接是否活动的时间间隔,以分钟为单位。

sqlnetora.sqlnet.inbound_connect_timeout

0107200

动态

客户端连接到数据库服务器并提供所需身份验证信息的时间,以秒为单位。

sqlnetora.sqlnet.outbound_connect_timeout

0107200

动态

客户端建立与数据库实例的 Oracle Net 连接的时间,以秒为单位。

sqlnetora.sqlnet.recv_timeout

0107200

动态

数据库服务器在建立连接之后等待客户端数据的时间,以秒为单位。

sqlnetora.sqlnet.send_timeout

0107200

动态

数据库服务器在建立连接之后,完成对客户端的发送操作的时间,以秒为单位。

sqlnetora.tcp.connect_timeout

0107200

动态

客户端建立与数据库服务器的 TCP 连接的时间,以秒为单位。

sqlnetora.trace_level_server

041016OFFUSERADMINSUPPORT

动态

对于非 ADR 跟踪,在指定级别启用服务器跟踪或禁用服务器跟踪。

每个支持的 sqlnet.ora 参数的默认值是该版本的 Oracle 默认值。有关 Oracle 12c 默认值的信息,请参阅 12c Oracle 文档中的 sqlnet.ora 文件的参数。有关 Oracle 11g 默认值的信息,请参阅 11g Oracle 文档中的 sqlnet.ora 文件的参数

查看 sqlnet.ora 参数

您可以使用 AWS 管理控制台、AWS CLI 或 SQL 客户端查看 sqlnet.ora 参数及其设置。

使用控制台查看 sqlnet.ora 参数

有关查看参数组中参数的信息,请参阅使用数据库参数组

在 Oracle 参数组中,sqlnetora. 前缀标识哪些参数是 sqlnet.ora 参数。

使用 AWS CLI 查看 sqlnet.ora 参数

要查看在 Oracle 参数组中配置的 sqlnet.ora 参数,请使用 AWS CLI describe-db-parameters 命令。

要查看 Oracle 数据库实例的所有 sqlnet.ora 参数,请调用 AWS CLI download-db-log-file-portion 命令。指定数据库实例标识符、日志文件名和输出的类型。

以下代码列出 mydbinstance 的所有 sqlnet.ora 参数。

针对 Linux、OS X 或 Unix:

aws rds download-db-log-file-portion \ --db-instance-identifier mydbinstance \ --log-file-name trace/sqlnet-parameters \ --output text

对于 Windows:

aws rds download-db-log-file-portion ^ --db-instance-identifier mydbinstance ^ --log-file-name trace/sqlnet-parameters ^ --output text

使用 SQL 客户端查看 sqlnet.ora 参数

在 SQL 客户端中连接到 Oracle 数据库实例之后,以下查询列出 sqlnet.ora 参数。

SELECT * FROM TABLE (rdsadmin.rds_file_util.read_text_file( p_directory => 'BDUMP', p_filename => 'sqlnet-parameters'));

有关在 SQL 客户端中连接到 Oracle 数据库实例的信息,请参阅与运行 Oracle 数据库引擎的数据库实例连接