Amazon RDS - Oracle 功能
Oracle 是非常流行的关系型数据库,它通过其企业版功能在 Amazon 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'": []
}
]
}
Oracle 许可
在 RDS 中使用 Oracle 许可有两种方式。它们是包含许可和自带许可。
包含许可的模式
在此模式下,Amazon 持有您要使用的软件的许可。此外,AWS 本身通过其支持计划为 AWS 和 Oracle 软件提供支持。因此,用户无需购买任何单独的许可。平台定价包括用户支付的许可费用。此模式支持的两个版本是标准版一和标准版二。
自带许可 (BYOL)
在此模式下,用户将其持有的许可带入 RDS 平台。用户有责任维护许可、数据库实例类和数据库版本之间的兼容性。用户如有任何需要,可直接联系 Oracle 支持渠道。在此模型中,支持的版本包括企业版 (EE)、标准版 (SE)、标准版一 (SE1) 和标准版二 (SE2)。
对于多 A-Z 部署,用户应同时拥有主数据库实例和辅助数据库实例的许可证。
Oracle 数据库参数组
Oracle 数据库涉及许多数据库参数,需要针对数据库的各种功能和性能需求进行配置。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"
}
]
}
}

