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

配置 RDS for Oracle CDB

配置 CDB 与配置非 CDB 类似。

创建 RDS for Oracle CDB 实例

在 RDS for Oracle 中,创建 CDB 与创建非 CDB 几乎完全相同。不同之处在于,您在创建数据库实例时选择了 Oracle 多租户架构,还选择了架构配置:多租户或单租户。如果您在创建使用多租户配置的 CDB 时创建标签,则 RDS 会将标签传播到初始租户数据库。要创建 CDB,请使用 Amazon Web Services Management Console、Amazon CLI 或 RDS API。

创建 CDB 实例
  1. 登录 Amazon Web Services Management Console 并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在 Amazon RDS 控制台的右上角,选择要在其中创建 CDB 实例的 Amazon Web Services 区域。

  3. 在导航窗格中,选择 Databases (数据库)

  4. 选择创建数据库

  5. 选择数据库创建方法中,选择标准创建

  6. 引擎选项下面,选择 Oracle

  7. 对于数据库管理类型,选择 Amazon RDS

  8. 对于架构设置,选择 Oracle 多租户架构

  9. 对于架构配置,请执行以下操作之一:

    • 选择多租户配置,继续执行下一步。

    • 选择单租户配置并跳至步骤 11。

  10. (多租户配置)对于租户数据库设置,请进行以下更改:

    • 对于租户数据库名称,输入初始 PDB 的名称。PDB 名称必须与 CDB 名称不同,后者默认为 RDSCDB

    • 对于租户数据库主用户名,输入 PDB 的主用户名。您不能使用租户数据库主用户名登录 CDB 本身。

    • 租户数据库主密码中输入密码,或者选择自动生成密码

    • 租户数据库字符集中,为 PDB 选择一个字符集。您可以选择与 CDB 字符集不同的租户数据库字符集。

      默认 PDB 字符集是 AL32UTF8。如果选择非默认 PDB 字符集,则创建 CDB 的速度可能会变慢。

    注意

    您不能在 CDB 创建过程中创建多个租户数据库。您只能将 PDB 添加到已存在的 CDB。

  11. (单租户配置)根据数据库实例的设置中列出的选项选择所需的设置。请注意以下几点:

    • 主用户名中,输入 PDB 中本地用户的名称。您不能使用主用户名登录 CDB 根目录。

    • 对于初始数据库名称,输入 PDB 的名称。您不能命名 CDB,它具有原定设置名称 RDSCDB

  12. 选择创建数据库

要使用多租户配置创建 CDB,请结合以下参数使用 create-db-instance 命令:

  • --db-instance-identifier

  • --db-instance-class

  • --engine { oracle-ee-cdb | oracle-se2-cdb }

  • --master-username

  • --master-user-password

  • --multi-tenant(对于单租户配置,不要指定 multi-tenant--no-multi-tenant

  • --allocated-storage

  • --backup-retention-period

有关每项设置的信息,请参阅 数据库实例的设置

以下示例采用多租户配置创建了一个名为 my-cdb-inst 的 RDS for Oracle 数据库实例。如果您指定 --no-multi-tenant 或未指定 --multi-tenant,则默认 CDB 配置为单租户配置。引擎是 oracle-ee-cdb:一个指定 oracle-ee--multi-tenant 但因错误失败的命令。初始租户数据库名为 mypdb

对于 Linux、macOS 或 Unix:

aws rds create-db-instance \ --engine oracle-ee-cdb \ --db-instance-identifier my-cdb-inst \ --multi-tenant \ --db-name mypdb \ --allocated-storage 250 \ --db-instance-class db.t3.large \ --master-username pdb_admin \ --master-user-password pdb_admin_password \ --backup-retention-period 3

对于 Windows:

aws rds create-db-instance ^ --engine oracle-ee-cdb ^ --db-instance-identifier my-cdb-inst ^ --multi-tenant ^ --db-name mypdb ^ --allocated-storage 250 ^ --db-instance-class db.t3.large ^ --master-username pdb_admin ^ --master-user-password pdb_admin_password ^ --backup-retention-period 3
注意

作为安全最佳实践,请指定除此处所示提示以外的密码。

此命令生成类似于下述信息的输出。输出中不包括数据库名称、字符集、国家字符集和主用户。您可以使用 CLI 命令 describe-tenant-databases 查看此信息。

{ "DBInstance": { "DBInstanceIdentifier": "my-cdb-inst", "DBInstanceClass": "db.t3.large", "MultiTenant": true, "Engine": "oracle-ee-cdb", "DBResourceId": "db-ABCDEFGJIJKLMNOPQRSTUVWXYZ", "DBInstanceStatus": "creating", "AllocatedStorage": 250, "PreferredBackupWindow": "04:59-05:29", "BackupRetentionPeriod": 3, "DBSecurityGroups": [], "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-0a1bcd2e", "Status": "active" } ], "DBParameterGroups": [ { "DBParameterGroupName": "default.oracle-ee-cdb-19", "ParameterApplyStatus": "in-sync" } ], "DBSubnetGroup": { "DBSubnetGroupName": "default", "DBSubnetGroupDescription": "default", "VpcId": "vpc-1234567a", "SubnetGroupStatus": "Complete", ...

要使用 Amazon RDS API 创建数据库实例,请调用 CreateDBInstance 操作。

有关每项设置的信息,请参阅 数据库实例的设置

在 RDS for Oracle CDB 中连接到 PDB

您可以使用像 SQL*Plus 这样的实用程序连接到 PDB。要下载包含独立版本 SQL*Plus 的 Oracle 即时客户端,请参阅 Oracle 即时客户端下载

要将 SQL*Plus 连接到 PDB,您需要以下信息:

  • PDB 名称

  • 数据库用户名和密码

  • 您的数据库实例的端点

  • 端口号

有关查找上述信息的信息,请参阅查找 RDS for Oracle 数据库实例的端点

例 使用 SQL*Plus 连接到您的 PDB

在以下示例中,用您的主用户替换 master_user_name。另外,请将端点替换为您的数据库实例,然后包含端口号和 Oracle SID。SID 值是您在创建数据库实例时指定的 PDB 的名称,而不是数据库实例标识符。

对于 Linux、macOS 或 Unix:

sqlplus 'master_user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=endpoint)(PORT=port))(CONNECT_DATA=(SID=pdb_name)))'

对于 Windows:

sqlplus master_user_name@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=endpoint)(PORT=port))(CONNECT_DATA=(SID=pdb_name)))

您应该可以看到类似于如下所示的输出内容。

SQL*Plus: Release 19.0.0.0.0 Production on Mon Aug 21 09:42:20 2021

在您输入用户的密码之后,将出现 SQL 提示。

SQL>
注意

较短格式连接字符串 (Easy connect 或 EZCONNECT) (如 sqlplus username/password@LONGER-THAN-63-CHARS-RDS-ENDPOINT-HERE:1521/database-identifier) 可能会遇到最大字符限制,不应用于连接。