/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the rds-2014-10-31.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.RDS.Model
{
///
/// Container for the parameters to the CreateDBParameterGroup operation.
/// Creates a new DB parameter group.
///
///
///
/// A DB parameter group is initially created with the default parameters for the database
/// engine used by the DB instance. To provide custom values for any of the parameters,
/// you must modify the group after creating it using ModifyDBParameterGroup
.
/// Once you've created a DB parameter group, you need to associate it with your DB instance
/// using ModifyDBInstance
. When you associate a new DB parameter group with
/// a running DB instance, you need to reboot the DB instance without failover for the
/// new DB parameter group and associated settings to take effect.
///
///
///
/// This command doesn't apply to RDS Custom.
///
///
///
/// After you create a DB parameter group, you should wait at least 5 minutes before creating
/// your first DB instance that uses that DB parameter group as the default parameter
/// group. This allows Amazon RDS to fully complete the create action before the parameter
/// group is used as the default for a new DB instance. This is especially important for
/// parameters that are critical when creating the default database for a DB instance,
/// such as the character set for the default database defined by the character_set_database
/// parameter. You can use the Parameter Groups option of the Amazon
/// RDS console or the DescribeDBParameters command to verify that your DB
/// parameter group has been created or modified.
///
///
///
public partial class CreateDBParameterGroupRequest : AmazonRDSRequest
{
private string _dbParameterGroupFamily;
private string _dbParameterGroupName;
private string _description;
private List _tags = new List();
///
/// Empty constructor used to set properties independently even when a simple constructor is available
///
public CreateDBParameterGroupRequest() { }
///
/// Instantiates CreateDBParameterGroupRequest with the parameterized properties
///
/// The name of the DB parameter group. Constraints: - Must be 1 to 255 letters, numbers, or hyphens.
- First character must be a letter
- Can't end with a hyphen or contain two consecutive hyphens
This value is stored as a lowercase string.
/// The DB parameter group family name. A DB parameter group can be associated with one and only one DB parameter group family, and can be applied only to a DB instance running a database engine and engine version compatible with that DB parameter group family. 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 MySQL DB engine, use the following command: aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily" --engine mysql
The output contains duplicates. The following are the valid DB engine values: -
aurora-mysql
-
aurora-postgresql
-
mariadb
-
mysql
-
oracle-ee
-
oracle-ee-cdb
-
oracle-se2
-
oracle-se2-cdb
-
postgres
-
sqlserver-ee
-
sqlserver-se
-
sqlserver-ex
-
sqlserver-web
/// The description for the DB parameter group.
public CreateDBParameterGroupRequest(string dbParameterGroupName, string dbParameterGroupFamily, string description)
{
_dbParameterGroupName = dbParameterGroupName;
_dbParameterGroupFamily = dbParameterGroupFamily;
_description = description;
}
///
/// Gets and sets the property DBParameterGroupFamily.
///
/// The DB parameter group family name. A DB parameter group can be associated with one
/// and only one DB parameter group family, and can be applied only to a DB instance running
/// a database engine and engine version compatible with that DB parameter group family.
///
///
///
/// 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 MySQL DB
/// engine, use the following command:
///
///
///
/// aws rds describe-db-engine-versions --query "DBEngineVersions[].DBParameterGroupFamily"
/// --engine mysql
///
///
///
/// The output contains duplicates.
///
///
///
/// The following are the valid DB engine values:
///
/// -
///
///
aurora-mysql
///
/// -
///
///
aurora-postgresql
///
/// -
///
///
mariadb
///
/// -
///
///
mysql
///
/// -
///
///
oracle-ee
///
/// -
///
///
oracle-ee-cdb
///
/// -
///
///
oracle-se2
///
/// -
///
///
oracle-se2-cdb
///
/// -
///
///
postgres
///
/// -
///
///
sqlserver-ee
///
/// -
///
///
sqlserver-se
///
/// -
///
///
sqlserver-ex
///
/// -
///
///
sqlserver-web
///
///
///
[AWSProperty(Required=true)]
public string DBParameterGroupFamily
{
get { return this._dbParameterGroupFamily; }
set { this._dbParameterGroupFamily = value; }
}
// Check to see if DBParameterGroupFamily property is set
internal bool IsSetDBParameterGroupFamily()
{
return this._dbParameterGroupFamily != null;
}
///
/// Gets and sets the property DBParameterGroupName.
///
/// The name of the DB parameter group.
///
///
///
/// Constraints:
///
/// -
///
/// Must be 1 to 255 letters, numbers, or hyphens.
///
///
-
///
/// First character must be a letter
///
///
-
///
/// Can't end with a hyphen or contain two consecutive hyphens
///
///
///
/// This value is stored as a lowercase string.
///
///
///
[AWSProperty(Required=true)]
public string DBParameterGroupName
{
get { return this._dbParameterGroupName; }
set { this._dbParameterGroupName = value; }
}
// Check to see if DBParameterGroupName property is set
internal bool IsSetDBParameterGroupName()
{
return this._dbParameterGroupName != null;
}
///
/// Gets and sets the property Description.
///
/// The description for the DB parameter group.
///
///
[AWSProperty(Required=true)]
public string Description
{
get { return this._description; }
set { this._description = value; }
}
// Check to see if Description property is set
internal bool IsSetDescription()
{
return this._description != null;
}
///
/// Gets and sets the property Tags.
///
/// Tags to assign to the DB parameter group.
///
///
public List Tags
{
get { return this._tags; }
set { this._tags = value; }
}
// Check to see if Tags property is set
internal bool IsSetTags()
{
return this._tags != null && this._tags.Count > 0;
}
}
}