Amazon RDS - Oracle 功能


Oracle 是非常流行的关系型数据库,可通过其企业版功能在亚马逊 RDS 服务中使用。几乎 Oracle 的所有功能都可以在 RDS 平台中利用。下面简单介绍一下RDS平台的MYSQL主要特性。

支持的版本

11.2和12.1版本是RDS平台支持的主要版本。如果在数据库创建过程中未提及版本,则默认为当时的最新版本。下面是如何在 python SDK 程序中使用 AWS API 获取支持的数据库引擎版本的示例。

import boto3
client = boto3.client('rds')
response = client.describe_db_engine_versions(
    DBParameterGroupFamily='oracle-ee-12.1',
    DefaultOnly=True,
    Engine='',
    EngineVersion='',
    ListSupportedCharacterSets=False, #True,
)
print(response)

当我们运行上面的程序时,我们得到以下输出 -

{
   "ResponseMetadata": {
      "RetryAttempts": 0,
      "HTTPStatusCode": 200,
      "RequestId": "f6805635-3e16-4014-83cd-dfdaf3f17950",
      "HTTPHeaders": {
         "x-amzn-requestid": "f6805635-3e16-4014-83cd-dfdaf3f17950",
         "date": "Fri, 14 Sep 2018 03:46:38 GMT",
         "content-length": "1455",
         "content-type": "text/xml"
      }
   },
   "u'DBEngineVersions'": [
      {
         "u'Engine'": "oracle-ee",
         "u'DBParameterGroupFamily'": "oracle-ee-12.1",
         "u'SupportsLogExportsToCloudwatchLogs'": true,
         "u'SupportsReadReplica'": false,
         "u'DefaultCharacterSet'": {
            "u'CharacterSetName'": "AL32UTF8",
            "u'CharacterSetDescription'": "Unicode 5.0 UTF-8 Universal character set"
         },
         "u'DBEngineDescription'": "Oracle Database Enterprise Edition",
         "u'EngineVersion'": "12.1.0.2.v12",
         "u'DBEngineVersionDescription'": "Oracle 12.1.0.2.v12",
         "u'ExportableLogTypes'": [
            "alert",
            "audit",
            "listener",
            "trace"
         ],
         "u'ValidUpgradeTarget'": []
      }
   ]
}

甲骨文许可

在 RDS 中使用 Oracle 许可证有两种选择。它们包含许可证并自带许可证。

包含许可证的型号

在此模型中,亚马逊持有您将要使用的软件的许可证。此外,AWS 本身还通过其支持计划为 AWS 和 Oracle 软件提供支持。因此用户无需购买任何单独的许可证。平台定价包括用户支付的许可费用。此模型支持的两个版本是标准版一和标准版二。

自带许可证 (BYOL)

在此模型中,用户将其持有的许可证引入 RDS 平台。用户有责任维护许可证、数据库实例类和数据库版本之间的兼容性。如有需要,用户可以直接联系 Oracle 支持渠道。在此模型中,支持的版本为企业版 (EE)、标准版 (SE)、标准版一 (SE1) 和标准版二 (SE2)。

对于多可用区部署,用户应拥有主数据库实例和辅助数据库实例的许可证。

Oracle 数据库参数组

Oracle DB涉及很多数据库参数,需要根据数据库的各种特性和性能需求进行配置。AWS 通过 CLI 命令使这些参数可见,用户可以使用这些命令来查询参数值。以下是 CLI 命令和示例输出。

aws rds describe-engine-default-parameters --db-parameter-group-family oracle-ee-12.1
以下是通过上述 CLI 命令获得的一些重要参数。
{
    "EngineDefaults": {
        "Parameters": [
            {
                "AllowedValues": "TRUE,FALSE",
                "ParameterName": "_allow_level_without_connect_by",
                "ApplyType": "dynamic",
                "Description": "_allow_level_without_connect_by",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "boolean"
            },
            {
                "AllowedValues": "CHOOSE,OFF,CUBE,NESTED_LOOPS,MERGE,HASH",
                "ParameterName": "_always_semi_join",
                "ApplyType": "dynamic",
                "Description": "_always_semi_join",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "string"
            },
            {
                "AllowedValues": "TRUE,FALSE",
                "ParameterName": "_b_tree_bitmap_plans",
                "ApplyType": "dynamic",
                "Description": "_b_tree_bitmap_plans",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "boolean"
            },
    {
                "AllowedValues": "TRUE,FALSE",
                "ParameterName": "parallel_automatic_tuning",
                "ApplyType": "static",
                "Description": "enable intelligent defaults for parallel execution parameters",
                "IsModifiable": true,
                "Source": "engine-default",
                "DataType": "boolean"
            },
            {
                "AllowedValues": "ENABLE,DISABLE",
                "ParameterName": "xml_db_events",
                "ApplyType": "dynamic",
                "Description": "are XML DB events enabled",
                "IsModifiable": false,
                "Source": "engine-default",
                "DataType": "string"
            }
        ]
    }
}