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

使用选项组

一些数据库引擎提供更易于管理数据和数据库的其他功能,并为您的数据库提供更多安全保护。Amazon RDS 利用选项组启用和配置这些功能。通过选项组,可以指定各种名为选项的功能,它们是专为特定的 Amazon RDS 数据库实例提供的。选项可能具有指定该选项工作方式的设置。当您将数据库实例与选项组相关联时,就会在数据库实例上启用指定的选项和选项设置。

Amazon RDS 支持以下数据库引擎选项:

选项组概述

Amazon RDS 为每个新数据库实例提供空的默认选项组。您无法修改或删除此原定设置选项组,但可以修改您创建的通过原定设置选项组派生其设置的任何新选项组。要将选项应用于数据库实例,您必须执行以下操作:

  1. 创建新的选项组,或者复制或修改现有选项组。

  2. 向选项组中添加一个或多个选项。

  3. 将选项组与数据库实例相关联。

    要将选项组与数据库实例关联,请修改数据库实例。有关更多信息,请参阅“修改 Amazon RDS 数据库实例”。

数据库实例和数据库快照可与选项组相关联。有些情况下,您可能从数据库快照还原或为数据库实例执行时间点还原。在这些情况下,与数据库快照或数据库实例关联的选项组默认与还原的数据库实例相关联。您可以将不同的选项组与还原的数据库实例相关联。但是,新选项组必须包含原始选项组中包含的所有持久性或永久性选项。持久性和永久性选项的说明如下。

选项需要额外的内存才能在数据库实例上运行。因此,您可能需要根据数据库实例当前的使用情况启动更大的实例来使用这些选项。例如,Oracle Enterprise Manager Database Control 使用约 300 MB 的 RAM。如果为小数据库实例启用该选项,则可能会遇到性能问题或内存不足错误。

持久性和永久性选项

将两种选项 (持久性和永久性) 添加到选项组时,这两种选项需要考虑一些特殊的注意事项。

如果数据库实例与选项组关联,持久性选项则无法从该选项组中删除。持久性选项的一个示例是 Microsoft SQL Server 透明数据加密 (TDE) 的 TDE 选项。您必须先将所有数据库实例与该选项组取消关联,然后才能从选项组删除持久性选项。有些情况下,您可能从数据库快照还原或执行时间点还原。在这些情况下,如果与该数据库快照关联的选项组包含持久性选项,那么您只能将还原的数据库实例与该选项组相关联。

永久性选项(如适用于 Oracle 高级安全 TDE 的 TDE 选项)绝不能从选项组中删除。您可以更改使用永久性选项的数据库实例的选项组。但是,与数据库实例关联的选项组必须包括相同的永久性选项。有些情况下,您可能从数据库快照还原或执行时间点还原。在这些情况下,如果与该数据库快照关联的选项组包含永久性选项,那么您只能将还原的数据库实例与具有该永久性选项的选项组相关联。

对于 Oracle 数据库实例,您可以复制具有选项 Timezone 和/或 OLS 的共享数据库快照。为此,在复制数据库快照时,指定一个包含这些选项的目标选项组。OLS 选项仅对于运行 Oracle 12.2 或更高版本的 Oracle 数据库实例具有永久性和持久性。有关这些选项的更多信息,请参阅 Oracle 时区Oracle Label Security

VPC 注意事项

与该数据库实例关联的选项组会链接到该数据库实例的 VPC。这意味着,如果您尝试将实例还原到不同的 VPC,则无法使用为该数据库实例分配的选项组。如果您将数据库实例还原到不同的 VPC,可以执行以下操作之一:

  • 将默认选项组分配到数据库实例。

  • 分配关联到该 VPC 的选项组。

  • 创建新选项组并将其分配到数据库实例。

对于持久性或永久性选项(如 Oracle TDE),您必须创建新的选项组。在将数据库实例还原到不同的 VPC 中时,此选项组必须包括持久或永久选项。

选项设置可控制选项的行为。例如,Oracle 高级安全选项 NATIVE_NETWORK_ENCRYPTION 包含可用于为数据库实例的传入和传出网络流量指定加密算法的设置。部分选项设置已针对与 Amazon RDS 配合使用而优化,并且不能更改。

互斥选项

一些选项是互斥的。您可使用其中一个选项,而不能同时使用两个选项。以下选项是互斥的:

创建选项组

您可以创建一个新的选项组,该选项组从原定设置选项组派生其设置。然后,向新的选项组中添加一个或多个选项。或者,如果您已经有一个现有选项组,则可复制带有您已添加到新选项组的所有选项的选项组。有关更多信息,请参阅 复制选项组

创建新选项组后,新选项组中没有选项。要了解如何将选项添加到选项组,请参阅 将选项添加到选项组。添加了您所需的选项后,即可将选项组与数据库实例相关联。这样,就可以在数据库实例上使用这些选项了。有关将选项组与数据库实例相关联的信息,请参阅 使用选项组 中适用于您的引擎的文档。

一种创建选项组的方法是使用 Amazon Web Services Management Console。

通过使用控制台创建新选项组
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择创建组

  4. 创建选项组窗口中,执行以下操作:

    1. 对于 Name (名称),输入选项组的名称,在 Amazon 账户内该名称需具有唯一性。此名称只能包含字母、数字和连字符。

    2. 对于说明,输入选项组的简要说明。此说明用于显示说明。

    3. 对于引擎,选择需要的数据库引擎。

    4. 对于主引擎版本,请选择所需的数据库引擎主版本。

  5. 要继续,请选择创建。要取消操作,请选择取消

要创建选项组,请使用带下列必需参数的 Amazon CLI create-option-group 命令。

  • --option-group-name

  • --engine-name

  • --major-engine-version

  • --option-group-description

下例创建了名为 testoptiongroup 的选项组,它是与 Oracle 企业版数据库引擎相关联的选项组。引号中的内容是描述。

对于 Linux、macOS 或 Unix:

aws rds create-option-group \ --option-group-name testoptiongroup \ --engine-name oracle-ee \ --major-engine-version 19 \ --option-group-description "Test option group for Oracle Database 19c EE"

对于 Windows:

aws rds create-option-group ^ --option-group-name testoptiongroup ^ --engine-name oracle-ee ^- --major-engine-version 19 ^ --option-group-description "Test option group for Oracle Database 19c EE"

要创建选项组,请调用 Amazon RDS API CreateOptionGroup 操作。包括以下参数:

  • OptionGroupName

  • EngineName

  • MajorEngineVersion

  • OptionGroupDescription

复制选项组

您可以使用 Amazon CLI 或 Amazon RDS API 复制选项组。复制选项组可能很方便。例如,当您具有现有选项组并且想在新的选项组中包含其大部分自定义参数和值时。您还可以为用于生产的选项组创建副本,然后修改此副本以测试其他选项设置。

注意

目前,无法将选项组复制到其他 Amazon 区域。

要复制选项组,请使用 Amazon CLI copy-option-group 命令。包括以下必需选项:

  • --source-option-group-identifier

  • --target-option-group-identifier

  • --target-option-group-description

以下示例创建一个名为 new-option-group 的选项组,它是选项组 my-option-group 的本地副本。

对于 Linux、macOS 或 Unix:

aws rds copy-option-group \ --source-option-group-identifier my-option-group \ --target-option-group-identifier new-option-group \ --target-option-group-description "My new option group"

对于 Windows:

aws rds copy-option-group ^ --source-option-group-identifier my-option-group ^ --target-option-group-identifier new-option-group ^ --target-option-group-description "My new option group"

要复制选项组,请调用 Amazon RDS API CopyOptionGroup 操作。包括以下必需参数。

  • SourceOptionGroupIdentifier

  • TargetOptionGroupIdentifier

  • TargetOptionGroupDescription

将选项添加到选项组

您可将选项添加到现有选项组。添加了您所需的选项后,即可将选项组与数据库实例相关联,以便在数据库实例上使用其中的选项。有关将选项组与数据库实例相关联的信息,请参阅 使用选项组 中列出的适用于特定数据库引擎的文档。

在以下两种情况下,必须立即应用选项组更改:

  • 当您添加用于添加或更新端口值的选项时,如 OEM 选项。

  • 当您添加或删除某个具有含端口值选项的选项组时。

在这些情况下,请选择控制台中的 Apply Immediately (立即应用) 选项。或者,您可以在使用 Amazon CLI 时加入 --apply-immediately 选项,或在使用 Amazon RDS API 时将 ApplyImmediately 参数设置为 true。可立即应用不包括端口值的选项,也可在数据库实例的下一维护时段内应用此类选项。

注意

如果您将安全组指定为选项组中某个选项的值,则可以通过修改选项组来管理该安全组。您无法通过修改数据库实例来更改或删除此安全组。此外,安全组不会显示在 Amazon Web Services Management Console 的数据库实例详细信息中,也不会显示在 Amazon CLI 命令 describe-db-instances 的输出中。

您可以使用 Amazon Web Services Management Console将选项添加到选项组。

通过使用控制台将选项添加到选项组
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择要修改的选项组,然后选择 Add Option (添加选项)

    控制台选项组
  4. 添加选项窗口中,执行以下操作:

    1. 选择要添加的选项。您可能需要根据您选择的选项提供其他值。例如,当您选择 OEM 选项时,必须同时输入端口值,并指定安全组。

    2. 要在添加选项后在所有关联数据库实例上启用该选项,对于立即应用,请选择。如果选择(默认),则会在下一个维护时段为每个关联数据库实例启用此选项。

    控制台选项组
  5. 根据需要设置完毕后,选择 Add Option (添加选项)

要将选项添加到选项组,请带所需选项运行 Amazon CLIadd-option-to-option-group 命令。要立即在所有关联数据库实例上启用新选项,请加入 --apply-immediately 参数。默认情况下,会在每个关联数据库实例的下一维护时段启用此选项。包括以下必需参数:

  • --option-group-name

下例会立即将带有 America/Los_Angeles 设置的 Timezone 选项添加到名为 testoptiongroup 的选项组,并立即启用它。

对于 Linux、macOS 或 Unix:

aws rds add-option-to-option-group \ --option-group-name testoptiongroup \ --options "OptionName=Timezone,OptionSettings=[{Name=TIME_ZONE,Value=America/Los_Angeles}]" \ --apply-immediately

对于 Windows:

aws rds add-option-to-option-group ^ --option-group-name testoptiongroup ^ --options "OptionName=Timezone,OptionSettings=[{Name=TIME_ZONE,Value=America/Los_Angeles}]" ^ --apply-immediately

命令输出类似于以下内容:

...{ "OptionName": "Timezone", "OptionDescription": "Change time zone", "Persistent": true, "Permanent": false, "OptionSettings": [ { "Name": "TIME_ZONE", "Value": "America/Los_Angeles", "DefaultValue": "UTC", "Description": "Specifies the timezone the user wants to change the system time to", "ApplyType": "DYNAMIC", "DataType": "STRING", "AllowedValues": "Africa/Cairo,...", "IsModifiable": true, "IsCollection": false } ], "DBSecurityGroupMemberships": [], "VpcSecurityGroupMemberships": [] }...

以下示例将 Oracle OEM 选项添加到选项组。其中还指定了自定义端口和一对 Amazon EC2 VPC 安全组来用于该端口。

对于 Linux、macOS 或 Unix:

aws rds add-option-to-option-group \ --option-group-name testoptiongroup \ --options OptionName=OEM,Port=5500,VpcSecurityGroupMemberships="sg-test1,sg-test2" \ --apply-immediately

对于 Windows:

aws rds add-option-to-option-group ^ --option-group-name testoptiongroup ^ --options OptionName=OEM,Port=5500,VpcSecurityGroupMemberships="sg-test1,sg-test2" ^ --apply-immediately

命令输出类似于以下内容:

OPTIONGROUP False oracle-ee 19 arn:aws:rds:us-east-1:1234567890:og:testoptiongroup Test Option Group testoptiongroup vpc-test OPTIONS Oracle 12c EM Express OEM False False 5500 VPCSECURITYGROUPMEMBERSHIPS active sg-test1 VPCSECURITYGROUPMEMBERSHIPS active sg-test2

下例将 Oracle 选项 NATIVE_NETWORK_ENCRYPTION 添加到选项组,然后指定该选项的设置。如果未指定选项设置,则使用默认值。

对于 Linux、macOS 或 Unix:

aws rds add-option-to-option-group \ --option-group-name testoptiongroup \ --options '[{"OptionSettings":[{"Name":"SQLNET.ENCRYPTION_SERVER","Value":"REQUIRED"},{"Name":"SQLNET.ENCRYPTION_TYPES_SERVER","Value":"AES256,AES192,DES"}],"OptionName":"NATIVE_NETWORK_ENCRYPTION"}]' \ --apply-immediately

对于 Windows:

aws rds add-option-to-option-group ^ --option-group-name testoptiongroup ^ --options "OptionSettings"=[{"Name"="SQLNET.ENCRYPTION_SERVER","Value"="REQUIRED"},{"Name"="SQLNET.ENCRYPTION_TYPES_SERVER","Value"="AES256\,AES192\,DES"}],"OptionName"="NATIVE_NETWORK_ENCRYPTION" ^ --apply-immediately

命令输出类似于以下内容:

...{ "OptionName": "NATIVE_NETWORK_ENCRYPTION", "OptionDescription": "Native Network Encryption", "Persistent": false, "Permanent": false, "OptionSettings": [ { "Name": "SQLNET.ENCRYPTION_TYPES_SERVER", "Value": "AES256,AES192,DES", "DefaultValue": "RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40", "Description": "Specifies list of encryption algorithms in order of intended use", "ApplyType": "STATIC", "DataType": "STRING", "AllowedValues": "RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40", "IsModifiable": true, "IsCollection": true }, { "Name": "SQLNET.ENCRYPTION_SERVER", "Value": "REQUIRED", "DefaultValue": "REQUESTED", "Description": "Specifies the desired encryption behavior", "ApplyType": "STATIC", "DataType": "STRING", "AllowedValues": "ACCEPTED,REJECTED,REQUESTED,REQUIRED", "IsModifiable": true, "IsCollection": false },...

要使用 Amazon RDS API 将选项添加到选项组,请使用所要添加的选项调用 ModifyOptionGroup 操作。要立即在所有关联数据库实例上启用新选项,请加入 ApplyImmediately 参数并将其设置为 true。默认情况下,会在每个关联数据库实例的下一维护时段启用此选项。包括以下必需参数:

  • OptionGroupName

列出选项组的选项和选项设置

您可以列出选项组的所有选项和选项设置。

您可以使用 Amazon Web Services Management Console列出选项组的所有选项和选项设置。

列出选项组的选项和选项设置
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择选项组的名称可以显示其详细信息。此时将列出选项组中的选项和选项设置。

要列出选项组的选项和选项设置,请使用 Amazon CLIdescribe-option-groups 命令。指定您要查看其选项和设置的选项组的名称。如果不指定选项组名称,则会显示所有选项组的说明。

以下示例列出了所有选项组的选项和选项设置。

aws rds describe-option-groups

以下示例列出名为 testoptiongroup 的选项组的选项和选项设置。

aws rds describe-option-groups --option-group-name testoptiongroup

要列出选项组的选项和选项设置,请使用 Amazon RDS API DescribeOptionGroups 操作。指定您要查看其选项和设置的选项组的名称。如果不指定选项组名称,则会显示所有选项组的说明。

修改选项设置

添加具有可修改的选项设置的选项后,可随时修改这些设置。如果更改选项组的选项或选项设置,这些更改将应用到与此选项组相关联的所有数据库实例。有关哪些设置对各种选项可用的详细信息,请参阅 使用选项组 中适用于您的引擎的文档。

在以下两种情况下,必须立即应用选项组更改:

  • 当您添加用于添加或更新端口值的选项时,如 OEM 选项。

  • 当您添加或删除某个具有含端口值选项的选项组时。

在这些情况下,请选择控制台中的 Apply Immediately (立即应用) 选项。或者,您可以在使用 --apply-immediately 时加入 Amazon CLI 选项,或在使用 RDS API 时将 ApplyImmediately 参数设置为 true。可立即应用不包括端口值的选项,也可在数据库实例的下一维护时段内应用此类选项。

注意

如果您将安全组指定为选项组中某个选项的值,则可以通过修改选项组来管理该安全组。您无法通过修改数据库实例来更改或删除此安全组。此外,安全组不会显示在 Amazon Web Services Management Console 的数据库实例详细信息中,也不会显示在 Amazon CLI 命令 describe-db-instances 的输出中。

您可以使用 Amazon Web Services Management Console来修改选项设置。

通过使用控制台来修改选项设置
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择要修改选项的选项组,然后选择修改选项

  4. 修改选项窗口中,从安装的选项中选择要修改设置的选项。执行所需的更改。

  5. 要在添加选项后启用该选项,对于立即应用,请选择。如果选择(默认),则会在下一个维护时段为每个关联数据库实例启用此选项。

  6. 根据需要设置完毕后,选择修改选项

要修改选项设置,请使用 Amazon CLI add-option-to-option-group 命令处理要修改的选项组和选项。默认情况下,会在每个关联数据库实例的下一维护时段启用此选项。要立即将更改应用到所有关联数据库实例,请包含 --apply-immediately 参数。要修改选项设置,请使用 --settings 参数。

下例会修改在名为 testoptiongroup 的选项组中 Oracle Enterprise Manager Database Control (OEM) 使用的端口,并立即应用此更改。

对于 Linux、macOS 或 Unix:

aws rds add-option-to-option-group \ --option-group-name testoptiongroup \ --options OptionName=OEM,Port=5432,DBSecurityGroupMemberships=default \ --apply-immediately

对于 Windows:

aws rds add-option-to-option-group ^ --option-group-name testoptiongroup ^ --options OptionName=OEM,Port=5432,DBSecurityGroupMemberships=default ^ --apply-immediately

命令输出类似于以下内容:

OPTIONGROUP False oracle-ee 19 arn:aws:rds:us-east-1:1234567890:og:testoptiongroup Test Option Group testoptiongroup OPTIONS Oracle 12c EM Express OEM False False 5432 DBSECURITYGROUPMEMBERSHIPS default authorized

下例修改 Oracle 选项 NATIVE_NETWORK_ENCRYPTION,然后更改该选项的设置。

对于 Linux、macOS 或 Unix:

aws rds add-option-to-option-group \ --option-group-name testoptiongroup \ --options '[{"OptionSettings":[{"Name":"SQLNET.ENCRYPTION_SERVER","Value":"REQUIRED"},{"Name":"SQLNET.ENCRYPTION_TYPES_SERVER","Value":"AES256,AES192,DES,RC4_256"}],"OptionName":"NATIVE_NETWORK_ENCRYPTION"}]' \ --apply-immediately

对于 Windows:

aws rds add-option-to-option-group ^ --option-group-name testoptiongroup ^ --options "OptionSettings"=[{"Name"="SQLNET.ENCRYPTION_SERVER","Value"="REQUIRED"},{"Name"="SQLNET.ENCRYPTION_TYPES_SERVER","Value"="AES256\,AES192\,DES\,RC4_256"}],"OptionName"="NATIVE_NETWORK_ENCRYPTION" ^ --apply-immediately

命令输出类似于以下内容:

OPTIONGROUP False oracle-ee 19 arn:aws:rds:us-east-1:1234567890:og:testoptiongroup Test Option Group testoptiongroup OPTIONS Oracle Advanced Security - Native Network Encryption NATIVE_NETWORK_ENCRYPTION False False OPTIONSETTINGS RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40 STATIC STRING RC4_256,AES256,AES192,3DES168,RC4_128,AES128,3DES112,RC4_56,DES,RC4_40,DES40 Specifies list of encryption algorithms in order of intended use True True SQLNET.ENCRYPTION_TYPES_SERVER AES256,AES192,DES,RC4_256 OPTIONSETTINGS ACCEPTED,REJECTED,REQUESTED,REQUIRED STATIC STRING REQUESTED Specifies the desired encryption behavior False True SQLNET.ENCRYPTION_SERVER REQUIRED OPTIONSETTINGS SHA1,MD5 STATIC STRING SHA1,MD5 Specifies list of checksumming algorithms in order of intended use True True SQLNET.CRYPTO_CHECKSUM_TYPES_SERVER SHA1,MD5 OPTIONSETTINGS ACCEPTED,REJECTED,REQUESTED,REQUIRED STATIC STRING REQUESTED Specifies the desired data integrity behavior False True SQLNET.CRYPTO_CHECKSUM_SERVER REQUESTED

要修改选项设置,请使用 Amazon RDS API ModifyOptionGroup 命令处理要修改的选项组和选项。默认情况下,会在每个关联数据库实例的下一维护时段启用此选项。要立即将更改应用到所有关联数据库实例,请加入 ApplyImmediately 参数并将其设置为 true

从选项组中删除选项

有些选项可从选项组中删除,而另一些不可以。在与选项组关联的所有数据库实例未取消关联之前,不能从该选项组中删除持续性选项。永久选项无法从选项组中删除。有关可删除选项的更多信息,请参阅 使用选项组 中列出的适用于特定引擎的文档。

如果您删除某个选项组的所有选项,Amazon RDS 将不会删除该选项组。与空选项组相关联的数据库实例会继续与之相关联;只是不具有任何活动的选项。或者,要删除数据库实例的所有选项,您可以将数据库实例与默认 (空) 选项组关联。

您可以使用 Amazon Web Services Management Console删除选项组中的选项。

通过使用控制台删除选项组中的选项
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择要删除选项的选项组,然后选择删除选项

  4. 删除选项窗口中,执行以下操作:

    • 选中您要删除的选项对应的复选框。

    • 要使删除在操作后立即生效,对于立即应用,请选择。如果选择(默认),则会在下一个维护时段为每个关联数据库实例删除此选项。

    删除选项组
  5. 根据需要完成所有设置后,选择是的,删除

要从选项组中删除选项,请在 Amazon CLI remove-option-from-option-group 命令中指定要删除的选项。默认情况下,会在每个关联数据库实例的下一维护时段删除此选项。要立即应用更改,请加入 --apply-immediately 参数。

以下示例会从名为 testoptiongroup 的选项组中移除 Oracle Enterprise Manager Database Control (OEM) 选项,并立即应用此更改。

对于 Linux、macOS 或 Unix:

aws rds remove-option-from-option-group \ --option-group-name testoptiongroup \ --options OEM \ --apply-immediately

对于 Windows:

aws rds remove-option-from-option-group ^ --option-group-name testoptiongroup ^ --options OEM ^ --apply-immediately

命令输出类似于以下内容:

OPTIONGROUP testoptiongroup oracle-ee 19 Test option group

要从选项组中删除选项,请使用 Amazon RDS API ModifyOptionGroup 操作。默认情况下,会在每个关联数据库实例的下一维护时段删除此选项。要立即应用更改,请加入 ApplyImmediately 参数,并将其设置为 true

包括以下参数:

  • OptionGroupName

  • OptionsToRemove.OptionName

删除选项组

只有在选项组满足以下条件时,才能删除该选项组:

  • 它未与任何 Amazon RDS 资源关联。选项组可以与数据库实例、手动数据库快照或自动数据库快照关联。

  • 它不是默认选项组。

要识别数据库实例和数据库快照使用的选项组,您可以使用以下 CLI 命令:

aws rds describe-db-instances \ --query 'DBInstances[*].[DBInstanceIdentifier,OptionGroupMemberships[].OptionGroupName]' aws rds describe-db-snapshots | jq -r '.DBSnapshots[] | "\(.DBInstanceIdentifier),\(.OptionGroupName)"' | sort | uniq

如果您尝试删除与 RDS 资源关联的选项组,将返回类似于下面的错误。

An error occurred (InvalidOptionGroupStateFault) when calling the DeleteOptionGroup operation: The option group 'optionGroupName' cannot be deleted because it is in use.
查找与选项组关联的 Amazon RDS 资源
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择选项组的名称可以显示其详细信息。

  4. 请查看关联的实例和快照部分,了解关联的 Amazon RDS 资源。

如果数据库实例已与选项组关联,请修改数据库实例来使用其他选项组。有关更多信息,请参阅 修改 Amazon RDS 数据库实例

如果手动数据库快照与选项组关联,请修改数据库快照以使用其他选项组。您可以使用 Amazon CLI modify-db-snapshot 命令来执行此操作。

注意

您无法修改自动数据库快照的选项组。

一种删除选项组的方法是使用 Amazon Web Services Management Console。

使用控制台删除选项组
  1. 登录Amazon Web Services Management Console并通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. 在导航窗格中,选择选项组

  3. 选择选项组。

  4. 选择 Delete group (删除组)

  5. 在确认页面,选择 Delete (删除) 删除选项组,或选择 Cancel (取消) 取消删除。

要删除选项组,请使用带下列必需参数的 Amazon CLI delete-option-group 命令。

  • --option-group-name

以下示例将删除名为 testoptiongroup 的选项组。

对于 Linux、macOS 或 Unix:

aws rds delete-option-group \ --option-group-name testoptiongroup

对于 Windows:

aws rds delete-option-group ^ --option-group-name testoptiongroup

要删除选项组,请调用 Amazon RDS API DeleteOptionGroup 操作。包括以下参数:

  • OptionGroupName