Amazon RDS Custom for Oracle 的已知问题 - Amazon Relational Database Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon RDS Custom for Oracle 的已知问题

使用 RDS Custom for Oracle 时,请注意数据库实例存在的以下问题。

  • 不支持调整根卷或 dbbin 卷的大小。

    警告

    强烈建议您不要手动调整根卷或 dbbin 卷的大小。建议您将所有配置存储在修补后仍然存在的数据卷中,并且仅使用 RDS 扩展存储 API 调整卷的大小。

  • 当数据库实例位于较旧的 AMI(比如使用 Oracle Linux 7 的 AMI)上时,某些 RDS API 可能会被阻止。要解决此问题,请使用操作系统修补功能将数据库实例修补到最新的 AMI。有关更多信息,请参阅 CEV 升级选项

  • 在执行 RDS 操作之前,请确保您的 Amazon Web Services 账户中有足够的计算和存储配额。

  • 如果数据库处于创建状态,并且您主动登录该数据库或 Amazon EC2 主机并运行命令,则数据库创建可能无法完成。

  • 由于只读副本问题,目前不支持控制文件多路复用。在创建只读副本之前,请确保在源数据库上的 CONTROL_FILES 初始化参数中仅指定一个文件名。

  • 您无法将数据库模式从 PHYSICAL STANDBY(已装载或只读)更改为 SNAPSHOT STANDBY(转换为读/写)。

  • 如果 Amazon Web Services 账户是具有服务控制策略(SCP)的 Amazon Organization 的一部分,并且 SCP 包含条件键,则可能无法创建 RDS Custom for Oracle 数据库实例,并会显示以下错误:

    You can't create the DB instance because of incompatible resources. The IAM instance profile role [AWSRDSCustomInstanceRole1-us-east-1] is missing the following permissions: EFFECT [Allow] on ACTION(S) [ssm:DescribeAssociation, ssm:DescribeDocument, ssm:GetConnectionStatus, ssm:GetDeployablePatchSnapshotForInstance, ssmmessages:OpenControlChannel, ssm:GetParameters, ssm:ListInstanceAssociations, ssm:PutConfigurePackageResult, ssmmessages:CreateControlChannel, ssm:GetParameter, ssm:UpdateAssociationStatus, ssm:GetManifest, ssmmessages:CreateDataChannel, ssm:PutInventory, ssm:UpdateInstanceInformation, ssm:DescribeInstanceInformation, ssmmessages:OpenDataChannel, ssm:GetDocument, ssm:ListAssociations, ssm:PutComplianceItems, ssm:UpdateInstanceAssociationStatus] for RESOURCE(S) [], EFFECT [Allow] on ACTION(S) [ec2messages:DeleteMessage, ec2messages:FailMessage, ec2messages:GetEndpoint, ec2messages:AcknowledgeMessage, ec2messages:GetMessages, ec2messages:SendReply] for RESOURCE(S) [], EFFECT [Allow] on ACTION(S) [logs:CreateLogStream, logs:DescribeLogStreams, logs:PutRetentionPolicy, logs:PutLogEvents]

    要解决此问题,请向 Amazon Web Services 支持 创建支持工单。

数据库用户帐户存在的已知问题

请注意以下问题:

  • 不要删除以字符串 RDS 开头的数据库用户账户,例如 RDSADMINRDS_DATAGUARD。RDS Custom for Oracle 使用 RDS 账户执行自动化操作。如果删除此用户帐户,RDS Custom 会将实例移至不受支持的配置状态。

  • 不能使用 ModifyDBInstance API 更改 RDS Custom for Oracle 数据库实例的主用户名。

  • RDS Custom for Oracle 会轮换所有数据库实例的用户账户凭证。有关更多信息,请参阅 轮换 RDS Custom for Oracle 凭证以遵循合规性计划。如果使用本地主/备用配置,则凭证轮换可能会影响以下资源:

    • 手动创建的备用 RDS Custom for Oracle 实例

      要解决此问题,请删除手动创建的备用数据库,然后使用 API 调用创建 Oracle 只读副本。手动管理手动创建的备用数据库的密钥,使其与源数据库实例相匹配。

    • 手动创建的跨区域只读副本

      要解决此问题,请手动保存密钥,使其与主数据库实例相匹配。

参数和配置文件存在的已知问题

  • 在执行扩展计算、操作系统升级以及 RDS Custom 替换根卷的其他操作之后,必须配置 crontab 文件。强烈建议您保留 crontab 的备份。

  • 配置 listener.ora 文件时,请注意以下准则:

    • 确保该文件中的每个条目都位于一行中。这种方法可以避免在创建实例期间出现缩进问题。

    • 确保 GLOBAL_DBNAME 等于 SID_NAME 的值。

    • 确保 LISTENER 的值遵循命名约定 L_dbname_001

    • 确保 listener.ora 文件保持与数据库名称的联系。RDS Custom 使用此联系来验证数据库的启动。如果您错误地修改此文件,则诸如扩展计算或修补之类的操作可能会失败。

      以下示例显示正确配置的 listener.ora 参数。

      ADR_BASE_L_ORCL_001=/rdsdbdata/log/ USE_SID_AS_SERVICE_L_ORCL_001=ON SID_LIST_L_ORCL_001=(SID_LIST = (SID_DESC = (SID_NAME = ORCL)(GLOBAL_DBNAME = ORCL) (ORACLE_HOME = /rdsdbbin/oracle.19.custom.r1.EE.1))) SUBSCRIBE_FOR_NODE_DOWN_EVENT_L_ORCL_001=OFF L_ORCL_001=(DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = XXXX)(HOST = x.x.x.x))) (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(PORT = XXXX)(HOST = 127.0.0.1))))
  • 在服务器参数文件或初始化参数文件中不支持注释。

  • 您必须在服务器参数文件(/rdsdbdata/config/oracle_pfile)中声明以下初始化参数:

    • MEMORY_MAX_TARGET

    • MEMORY_TARGET

    • PGA_AGGREGATE_TARGET

    • PROCESSES

    • SGA_TARGET

    • USE_LARGE_PAGES

    如果未在 /rdsdbdata/config/oracle_pfile 中声明上述参数,则只读副本创建和扩展计算可能会失败。

  • 您无法删除配置文件(例如服务器参数文件、审计文件、listener.oratnsnames.orasqlnet.ora)的符号链接。也无法修改这些文件的目录结构。RDS Custom 自动化要求这些文件存在于特定的目录结构中。

    要从初始化参数文件创建服务器参数文件,请使用以下语法。

    CREATE SPFILE='/rdsdbdata/admin/$ORACLE_SID/pfile/spfile$ORACLE_SID.ora' FROM PFILE='/rdsdbdata/config/oracle_pfile';