Skip to content

copy_db_cluster_parameter_group

copy_db_cluster_parameter_group(
    *,
    config_overrides: Optional[RDSClientConfig] = None,
    source_db_cluster_parameter_group_identifier: Optional[String] = None,
    target_db_cluster_parameter_group_identifier: Optional[String] = None,
    target_db_cluster_parameter_group_description: Optional[String] = None,
    tags: Optional[TagList] = None,
) -> CopyDBClusterParameterGroupResult

Copies the specified DB cluster parameter group.

You can't copy a default DB cluster parameter group. Instead, create a new custom DB cluster parameter group, which copies the default parameters and values for the specified DB cluster parameter group family.

Parameters:

  • source_db_cluster_parameter_group_identifier (Optional[String], default: None ) –

    The identifier or Amazon Resource Name (ARN) for the source DB cluster parameter group. For information about creating an ARN, see Constructing an ARN for Amazon RDS in the Amazon Aurora User Guide.

    Constraints:

    • Must specify a valid DB cluster parameter group.

  • target_db_cluster_parameter_group_identifier (Optional[String], default: None ) –

    The identifier for the copied DB cluster parameter group.

    Constraints:

    • Can't be null, empty, or blank

    • Must contain from 1 to 255 letters, numbers, or hyphens

    • First character must be a letter

    • Can't end with a hyphen or contain two consecutive hyphens

    Example: my-cluster-param-group1

  • target_db_cluster_parameter_group_description (Optional[String], default: None ) –

    A description for the copied DB cluster parameter group.

Raises:

Examples:

To copy a DB cluster parameter group This example copies a DB cluster parameter group.

>>> client.copy_db_cluster_parameter_group(source_db_cluster_parameter_group_identifier='mydbclusterparametergroup', target_db_cluster_parameter_group_identifier='mydbclusterparametergroup-copy', target_db_cluster_parameter_group_description='My DB cluster parameter group copy')
Source code in docs_src/capo_rds/_services/rds.py
def copy_db_cluster_parameter_group(
    self,
    *,
    config_overrides: Optional[RDSClientConfig] = None,
    source_db_cluster_parameter_group_identifier: Optional[
        "capo_rds.types.string.String"
    ] = None,
    target_db_cluster_parameter_group_identifier: Optional[
        "capo_rds.types.string.String"
    ] = None,
    target_db_cluster_parameter_group_description: Optional[
        "capo_rds.types.string.String"
    ] = None,
    tags: Optional["capo_rds.types.tag_list.TagList"] = None,
) -> "capo_rds.types.copy_db_cluster_parameter_group_result.CopyDBClusterParameterGroupResult":
    """<p>Copies the specified DB cluster parameter group.</p> <note> <p>You can't copy a default DB cluster parameter group. Instead, create a new custom DB cluster parameter group, which copies the default parameters and values for the specified DB cluster parameter group family.</p> </note>

    Args:
        source_db_cluster_parameter_group_identifier: <p>The identifier or Amazon Resource Name (ARN) for the source DB cluster parameter group. For information about creating an ARN, see <a href="https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_Tagging.ARN.html#USER_Tagging.ARN.Constructing"> Constructing an ARN for Amazon RDS</a> in the <i>Amazon Aurora User Guide</i>.</p> <p>Constraints:</p> <ul> <li> <p>Must specify a valid DB cluster parameter group.</p> </li> </ul>
        target_db_cluster_parameter_group_identifier: <p>The identifier for the copied DB cluster parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Can't be null, empty, or blank</p> </li> <li> <p>Must contain from 1 to 255 letters, numbers, or hyphens</p> </li> <li> <p>First character must be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive hyphens</p> </li> </ul> <p>Example: <code>my-cluster-param-group1</code> </p>
        target_db_cluster_parameter_group_description: <p>A description for the copied DB cluster parameter group.</p>

    Raises:
        capo_rds.errors.db_parameter_group_already_exists_fault.DBParameterGroupAlreadyExistsFault: <p>A DB parameter group with the same name exists.</p>
        capo_rds.errors.db_parameter_group_not_found_fault.DBParameterGroupNotFoundFault: <p> <code>DBParameterGroupName</code> doesn't refer to an existing DB parameter group.</p>
        capo_rds.errors.db_parameter_group_quota_exceeded_fault.DBParameterGroupQuotaExceededFault: <p>The request would result in the user exceeding the allowed number of DB parameter groups.</p>
        capo_rds.errors.UnknownServiceError: The service returned an error code this client does not model.

    Examples:
        To copy a DB cluster parameter group
        This example copies a DB cluster parameter group.

        >>> client.copy_db_cluster_parameter_group(source_db_cluster_parameter_group_identifier='mydbclusterparametergroup', target_db_cluster_parameter_group_identifier='mydbclusterparametergroup-copy', target_db_cluster_parameter_group_description='My DB cluster parameter group copy')
    """

    def _handler(
        req: "OperationRequest[capo_rds.types.copy_db_cluster_parameter_group_message.CopyDBClusterParameterGroupMessage]",
    ) -> OperationResponse[
        "capo_rds.types.copy_db_cluster_parameter_group_result.CopyDBClusterParameterGroupResult"
    ]:
        import capo_rds._operations.amazon_rd_sv19.copy_db_cluster_parameter_group

        output, http_response = (
            capo_rds._operations.amazon_rd_sv19.copy_db_cluster_parameter_group.copy_db_cluster_parameter_group(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("CopyDBClusterParameterGroup")
    )
    input_: capo_rds.types.copy_db_cluster_parameter_group_message.CopyDBClusterParameterGroupMessage = {}
    if source_db_cluster_parameter_group_identifier is not None:
        input_["source_db_cluster_parameter_group_identifier"] = (
            source_db_cluster_parameter_group_identifier
        )
    if target_db_cluster_parameter_group_identifier is not None:
        input_["target_db_cluster_parameter_group_identifier"] = (
            target_db_cluster_parameter_group_identifier
        )
    if target_db_cluster_parameter_group_description is not None:
        input_["target_db_cluster_parameter_group_description"] = (
            target_db_cluster_parameter_group_description
        )
    if tags is not None:
        input_["tags"] = tags

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output