modify_option_group

RDS.Client.modify_option_group(**kwargs)

Modifies an existing option group.

See also: AWS API Documentation

Request Syntax

response = client.modify_option_group(
    OptionGroupName='string',
    OptionsToInclude=[
        {
            'OptionName': 'string',
            'Port': 123,
            'OptionVersion': 'string',
            'DBSecurityGroupMemberships': [
                'string',
            ],
            'VpcSecurityGroupMemberships': [
                'string',
            ],
            'OptionSettings': [
                {
                    'Name': 'string',
                    'Value': 'string',
                    'DefaultValue': 'string',
                    'Description': 'string',
                    'ApplyType': 'string',
                    'DataType': 'string',
                    'AllowedValues': 'string',
                    'IsModifiable': True|False,
                    'IsCollection': True|False
                },
            ]
        },
    ],
    OptionsToRemove=[
        'string',
    ],
    ApplyImmediately=True|False
)
Parameters
  • OptionGroupName (string) --

    [REQUIRED]

    The name of the option group to be modified.

    Permanent options, such as the TDE option for Oracle Advanced Security TDE, can't be removed from an option group, and that option group can't be removed from a DB instance once it is associated with a DB instance

  • OptionsToInclude (list) --

    Options in this list are added to the option group or, if already present, the specified configuration is used to update the existing configuration.

    • (dict) --

      A list of all available options

      • OptionName (string) -- [REQUIRED]

        The configuration of options to include in a group.

      • Port (integer) --

        The optional port for the option.

      • OptionVersion (string) --

        The version for the option.

      • DBSecurityGroupMemberships (list) --

        A list of DBSecurityGroupMembership name strings used for this option.

        • (string) --
      • VpcSecurityGroupMemberships (list) --

        A list of VpcSecurityGroupMembership name strings used for this option.

        • (string) --
      • OptionSettings (list) --

        The option settings to include in an option group.

        • (dict) --

          Option settings are the actual settings being applied or configured for that option. It is used when you modify an option group or describe option groups. For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER that can have several different values.

          • Name (string) --

            The name of the option that has settings that you can set.

          • Value (string) --

            The current value of the option setting.

          • DefaultValue (string) --

            The default value of the option setting.

          • Description (string) --

            The description of the option setting.

          • ApplyType (string) --

            The DB engine specific parameter type.

          • DataType (string) --

            The data type of the option setting.

          • AllowedValues (string) --

            The allowed values of the option setting.

          • IsModifiable (boolean) --

            A Boolean value that, when true, indicates the option setting can be modified from the default.

          • IsCollection (boolean) --

            Indicates if the option setting is part of a collection.

  • OptionsToRemove (list) --

    Options in this list are removed from the option group.

    • (string) --
  • ApplyImmediately (boolean) -- A value that indicates whether to apply the change immediately or during the next maintenance window for each instance associated with the option group.
Return type

dict

Returns

Response Syntax

{
    'OptionGroup': {
        'OptionGroupName': 'string',
        'OptionGroupDescription': 'string',
        'EngineName': 'string',
        'MajorEngineVersion': 'string',
        'Options': [
            {
                'OptionName': 'string',
                'OptionDescription': 'string',
                'Persistent': True|False,
                'Permanent': True|False,
                'Port': 123,
                'OptionVersion': 'string',
                'OptionSettings': [
                    {
                        'Name': 'string',
                        'Value': 'string',
                        'DefaultValue': 'string',
                        'Description': 'string',
                        'ApplyType': 'string',
                        'DataType': 'string',
                        'AllowedValues': 'string',
                        'IsModifiable': True|False,
                        'IsCollection': True|False
                    },
                ],
                'DBSecurityGroupMemberships': [
                    {
                        'DBSecurityGroupName': 'string',
                        'Status': 'string'
                    },
                ],
                'VpcSecurityGroupMemberships': [
                    {
                        'VpcSecurityGroupId': 'string',
                        'Status': 'string'
                    },
                ]
            },
        ],
        'AllowsVpcAndNonVpcInstanceMemberships': True|False,
        'VpcId': 'string',
        'OptionGroupArn': 'string',
        'SourceOptionGroup': 'string',
        'SourceAccountId': 'string',
        'CopyTimestamp': datetime(2015, 1, 1)
    }
}

Response Structure

  • (dict) --

    • OptionGroup (dict) --

      • OptionGroupName (string) --

        Specifies the name of the option group.

      • OptionGroupDescription (string) --

        Provides a description of the option group.

      • EngineName (string) --

        Indicates the name of the engine that this option group can be applied to.

      • MajorEngineVersion (string) --

        Indicates the major engine version associated with this option group.

      • Options (list) --

        Indicates what options are available in the option group.

        • (dict) --

          Option details.

          • OptionName (string) --

            The name of the option.

          • OptionDescription (string) --

            The description of the option.

          • Persistent (boolean) --

            Indicate if this option is persistent.

          • Permanent (boolean) --

            Indicate if this option is permanent.

          • Port (integer) --

            If required, the port configured for this option to use.

          • OptionVersion (string) --

            The version of the option.

          • OptionSettings (list) --

            The option settings for this option.

            • (dict) --

              Option settings are the actual settings being applied or configured for that option. It is used when you modify an option group or describe option groups. For example, the NATIVE_NETWORK_ENCRYPTION option has a setting called SQLNET.ENCRYPTION_SERVER that can have several different values.

              • Name (string) --

                The name of the option that has settings that you can set.

              • Value (string) --

                The current value of the option setting.

              • DefaultValue (string) --

                The default value of the option setting.

              • Description (string) --

                The description of the option setting.

              • ApplyType (string) --

                The DB engine specific parameter type.

              • DataType (string) --

                The data type of the option setting.

              • AllowedValues (string) --

                The allowed values of the option setting.

              • IsModifiable (boolean) --

                A Boolean value that, when true, indicates the option setting can be modified from the default.

              • IsCollection (boolean) --

                Indicates if the option setting is part of a collection.

          • DBSecurityGroupMemberships (list) --

            If the option requires access to a port, then this DB security group allows access to the port.

            • (dict) --

              This data type is used as a response element in the following actions:

              • ModifyDBInstance
              • RebootDBInstance
              • RestoreDBInstanceFromDBSnapshot
              • RestoreDBInstanceToPointInTime
              • DBSecurityGroupName (string) --

                The name of the DB security group.

              • Status (string) --

                The status of the DB security group.

          • VpcSecurityGroupMemberships (list) --

            If the option requires access to a port, then this VPC security group allows access to the port.

            • (dict) --

              This data type is used as a response element for queries on VPC security group membership.

              • VpcSecurityGroupId (string) --

                The name of the VPC security group.

              • Status (string) --

                The membership status of the VPC security group.

                Currently, the only valid status is active .

      • AllowsVpcAndNonVpcInstanceMemberships (boolean) --

        Indicates whether this option group can be applied to both VPC and non-VPC instances. The value true indicates the option group can be applied to both VPC and non-VPC instances.

      • VpcId (string) --

        If AllowsVpcAndNonVpcInstanceMemberships is false , this field is blank. If AllowsVpcAndNonVpcInstanceMemberships is true and this field is blank, then this option group can be applied to both VPC and non-VPC instances. If this field contains a value, then this option group can only be applied to instances that are in the VPC indicated by this field.

      • OptionGroupArn (string) --

        Specifies the Amazon Resource Name (ARN) for the option group.

      • SourceOptionGroup (string) --

        Specifies the name of the option group from which this option group is copied.

      • SourceAccountId (string) --

        Specifies the Amazon Web Services account ID for the option group from which this option group is copied.

      • CopyTimestamp (datetime) --

        Indicates when the option group was copied.

Exceptions

  • RDS.Client.exceptions.InvalidOptionGroupStateFault
  • RDS.Client.exceptions.OptionGroupNotFoundFault

Examples

The following example adds an option to an option group.

response = client.modify_option_group(
    ApplyImmediately=True,
    OptionGroupName='myawsuser-og02',
    OptionsToInclude=[
        {
            'DBSecurityGroupMemberships': [
                'default',
            ],
            'OptionName': 'MEMCACHED',
        },
    ],
)

print(response)

Expected Output:

{
    'OptionGroup': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}