createDBInstance method
Creates a new instance.
May throw DBInstanceAlreadyExistsFault. May throw InsufficientDBInstanceCapacityFault. May throw DBParameterGroupNotFoundFault. May throw DBSecurityGroupNotFoundFault. May throw InstanceQuotaExceededFault. May throw StorageQuotaExceededFault. May throw DBSubnetGroupNotFoundFault. May throw DBSubnetGroupDoesNotCoverEnoughAZs. May throw InvalidDBClusterStateFault. May throw InvalidSubnet. May throw InvalidVPCNetworkStateFault. May throw DBClusterNotFoundFault. May throw StorageTypeNotSupportedFault. May throw AuthorizationNotFoundFault. May throw KMSKeyNotAccessibleFault.
Parameter dBClusterIdentifier
:
The identifier of the cluster that the instance will belong to.
Parameter dBInstanceClass
:
The compute and memory capacity of the instance; for example,
db.r5.large
.
Parameter dBInstanceIdentifier
:
The instance identifier. This parameter is stored as a lowercase string.
Constraints:
- Must contain from 1 to 63 letters, numbers, or hyphens.
- The first character must be a letter.
- Cannot end with a hyphen or contain two consecutive hyphens.
mydbinstance
Parameter engine
:
The name of the database engine to be used for this instance.
Valid value: docdb
Parameter autoMinorVersionUpgrade
:
Indicates that minor engine upgrades are applied automatically to the
instance during the maintenance window.
Default: true
Parameter availabilityZone
:
The Amazon EC2 Availability Zone that the instance is created in.
Default: A random, system-chosen Availability Zone in the endpoint's AWS Region.
Example: us-east-1d
Parameter preferredMaintenanceWindow
:
The time range each week during which system maintenance can occur, in
Universal Coordinated Time (UTC).
Format: ddd:hh24:mi-ddd:hh24:mi
The default is a 30-minute window selected at random from an 8-hour block of time for each AWS Region, occurring on a random day of the week.
Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun
Constraints: Minimum 30-minute window.
Parameter promotionTier
:
A value that specifies the order in which an Amazon DocumentDB replica is
promoted to the primary instance after a failure of the existing primary
instance.
Default: 1
Valid values: 0-15
Parameter tags
:
The tags to be assigned to the instance. You can assign up to 10 tags to
an instance.
Implementation
Future<CreateDBInstanceResult> createDBInstance({
required String dBClusterIdentifier,
required String dBInstanceClass,
required String dBInstanceIdentifier,
required String engine,
bool? autoMinorVersionUpgrade,
String? availabilityZone,
String? preferredMaintenanceWindow,
int? promotionTier,
List<Tag>? tags,
}) async {
ArgumentError.checkNotNull(dBClusterIdentifier, 'dBClusterIdentifier');
ArgumentError.checkNotNull(dBInstanceClass, 'dBInstanceClass');
ArgumentError.checkNotNull(dBInstanceIdentifier, 'dBInstanceIdentifier');
ArgumentError.checkNotNull(engine, 'engine');
final $request = <String, dynamic>{};
$request['DBClusterIdentifier'] = dBClusterIdentifier;
$request['DBInstanceClass'] = dBInstanceClass;
$request['DBInstanceIdentifier'] = dBInstanceIdentifier;
$request['Engine'] = engine;
autoMinorVersionUpgrade
?.also((arg) => $request['AutoMinorVersionUpgrade'] = arg);
availabilityZone?.also((arg) => $request['AvailabilityZone'] = arg);
preferredMaintenanceWindow
?.also((arg) => $request['PreferredMaintenanceWindow'] = arg);
promotionTier?.also((arg) => $request['PromotionTier'] = arg);
tags?.also((arg) => $request['Tags'] = arg);
final $result = await _protocol.send(
$request,
action: 'CreateDBInstance',
version: '2014-10-31',
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
shape: shapes['CreateDBInstanceMessage'],
shapes: shapes,
resultWrapper: 'CreateDBInstanceResult',
);
return CreateDBInstanceResult.fromXml($result);
}