copy_option_group(**kwargs)¶Copies the specified option group.
See also: AWS API Documentation
Request Syntax
response = client.copy_option_group(
    SourceOptionGroupIdentifier='string',
    TargetOptionGroupIdentifier='string',
    TargetOptionGroupDescription='string',
    Tags=[
        {
            'Key': 'string',
            'Value': 'string'
        },
    ]
)
[REQUIRED]
The identifier for the source option group.
Constraints:
[REQUIRED]
The identifier for the copied option group.
Constraints:
Example: my-option-group
[REQUIRED]
The description for the copied option group.
A list of tags. For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.
Metadata assigned to an Amazon RDS resource consisting of a key-value pair.
For more information, see Tagging Amazon RDS Resources in the Amazon RDS User Guide.
A key is the required name of the tag. The string value can be from 1 to 128 Unicode characters in length and can't be prefixed with aws: or rds: . The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', ':', '/', '=', '+', '-', '@' (Java regex: "^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$").
A value is the optional value of the tag. The string value can be from 1 to 256 Unicode characters in length and can't be prefixed with aws: or rds: . The string can only contain only the set of Unicode letters, digits, white-space, '_', '.', ':', '/', '=', '+', '-', '@' (Java regex: "^([\p{L}\p{Z}\p{N}_.:/=+\-@]*)$").
dict
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:
ModifyDBInstanceRebootDBInstanceRestoreDBInstanceFromDBSnapshotRestoreDBInstanceToPointInTimeDBSecurityGroupName (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.OptionGroupAlreadyExistsFaultRDS.Client.exceptions.OptionGroupNotFoundFaultRDS.Client.exceptions.OptionGroupQuotaExceededFaultExamples
This example copies an option group.
response = client.copy_option_group(
    SourceOptionGroupIdentifier='mymysqloptiongroup',
    TargetOptionGroupDescription='My MySQL option group copy',
    TargetOptionGroupIdentifier='mymysqloptiongroup-copy',
)
print(response)
Expected Output:
{
    'OptionGroup': {
    },
    'ResponseMetadata': {
        '...': '...',
    },
}