createDBClusterParameterGroup method

Future<CreateDBClusterParameterGroupResult> createDBClusterParameterGroup({
  1. required String dBClusterParameterGroupName,
  2. required String dBParameterGroupFamily,
  3. required String description,
  4. List<Tag>? tags,
})

Creates a new DB cluster parameter group.

Parameters in a DB cluster parameter group apply to all of the instances in a DB cluster.

A DB cluster parameter group is initially created with the default parameters for the database engine used by instances in the DB cluster. To provide custom values for any of the parameters, you must modify the group after creating it using ModifyDBClusterParameterGroup. Once you've created a DB cluster parameter group, you need to associate it with your DB cluster using ModifyDBCluster.

When you associate a new DB cluster parameter group with a running Aurora DB cluster, reboot the DB instances in the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect.

When you associate a new DB cluster parameter group with a running Multi-AZ DB cluster, reboot the DB cluster without failover for the new DB cluster parameter group and associated settings to take effect. For more information on Amazon Aurora, see What is Amazon Aurora? in the Amazon Aurora User Guide.

For more information on Multi-AZ DB clusters, see Multi-AZ DB cluster deployments in the Amazon RDS User Guide.

May throw DBParameterGroupAlreadyExistsFault. May throw DBParameterGroupQuotaExceededFault.

Parameter dBClusterParameterGroupName : The name of the DB cluster parameter group.

Constraints:

  • Must not match the name of an existing DB cluster parameter group.

Parameter dBParameterGroupFamily : The DB cluster parameter group family name. A DB cluster parameter group can be associated with one and only one DB cluster parameter group family, and can be applied only to a DB cluster running a database engine and engine version compatible with that DB cluster parameter group family.

Aurora MySQL

Example: aurora-mysql5.7, aurora-mysql8.0

Aurora PostgreSQL

Example: aurora-postgresql14

RDS for MySQL

Example: mysql8.0

RDS for PostgreSQL

Example: postgres13

To list all of the available parameter group families for a DB engine, use the following command:

aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily" --engine <engine>

For example, to list all of the available parameter group families for the Aurora PostgreSQL DB engine, use the following command:

aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily" --engine aurora-postgresql The following are the valid DB engine values:

  • aurora-mysql
  • aurora-postgresql
  • mysql
  • postgres

Parameter description : The description for the DB cluster parameter group.

Parameter tags : Tags to assign to the DB cluster parameter group.

Implementation

Future<CreateDBClusterParameterGroupResult> createDBClusterParameterGroup({
  required String dBClusterParameterGroupName,
  required String dBParameterGroupFamily,
  required String description,
  List<Tag>? tags,
}) async {
  final $request = <String, String>{
    'DBClusterParameterGroupName': dBClusterParameterGroupName,
    'DBParameterGroupFamily': dBParameterGroupFamily,
    'Description': description,
    if (tags != null)
      if (tags.isEmpty)
        'Tags': ''
      else
        for (var i1 = 0; i1 < tags.length; i1++)
          for (var e3 in tags[i1].toQueryMap().entries)
            'Tags.Tag.${i1 + 1}.${e3.key}': e3.value,
  };
  final $result = await _protocol.send(
    $request,
    action: 'CreateDBClusterParameterGroup',
    version: '2014-10-31',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    resultWrapper: 'CreateDBClusterParameterGroupResult',
  );
  return CreateDBClusterParameterGroupResult.fromXml($result);
}