Menu
Amazon Relational Database Service
API Reference (API Version 2014-10-31)

RestoreDBClusterFromS3

Creates an Amazon Aurora DB cluster from data stored in an Amazon S3 bucket. Amazon RDS must be authorized to access the Amazon S3 bucket and the data must be created using the Percona XtraBackup utility as described in Migrating Data from MySQL by Using an Amazon S3 Bucket.

Request Parameters

For information about the parameters that are common to all actions, see Common Parameters.

AvailabilityZones.AvailabilityZone.N

A list of EC2 Availability Zones that instances in the restored DB cluster can be created in.

Type: Array of strings

Required: No

BackupRetentionPeriod

The number of days for which automated backups of the restored DB cluster are retained. You must specify a minimum value of 1.

Default: 1

Constraints:

  • Must be a value from 1 to 35

Type: Integer

Required: No

CharacterSetName

A value that indicates that the restored DB cluster should be associated with the specified CharacterSet.

Type: String

Required: No

DatabaseName

The database name for the restored DB cluster.

Type: String

Required: No

DBClusterIdentifier

The name of the DB cluster to create from the source data in the S3 bucket. This parameter is isn't case-sensitive.

Constraints:

  • Must contain from 1 to 63 alphanumeric characters or hyphens.

  • First character must be a letter.

  • Cannot end with a hyphen or contain two consecutive hyphens.

Example: my-cluster1

Type: String

Required: Yes

DBClusterParameterGroupName

The name of the DB cluster parameter group to associate with the restored DB cluster. If this argument is omitted, default.aurora5.6 will be used.

Constraints:

  • Must be 1 to 255 alphanumeric characters

  • First character must be a letter

  • Cannot end with a hyphen or contain two consecutive hyphens

Type: String

Required: No

DBSubnetGroupName

A DB subnet group to associate with the restored DB cluster.

Constraints: Must contain no more than 255 alphanumeric characters, periods, underscores, spaces, or hyphens. Must not be default.

Example: mySubnetgroup

Type: String

Required: No

EnableIAMDatabaseAuthentication

A Boolean value that is true to enable mapping of AWS Identity and Access Management (IAM) accounts to database accounts, and otherwise false.

Default: false

Type: Boolean

Required: No

Engine

The name of the database engine to be used for the restored DB cluster.

Valid Values: aurora

Type: String

Required: Yes

EngineVersion

The version number of the database engine to use.

Aurora

Example: 5.6.10a

Type: String

Required: No

KmsKeyId

The KMS key identifier for an encrypted DB cluster.

The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a DB cluster with the same AWS account that owns the KMS encryption key used to encrypt the new DB cluster, then you can use the KMS key alias instead of the ARN for the KM encryption key.

If the StorageEncrypted parameter is true, and you do not specify a value for the KmsKeyId parameter, then Amazon RDS will use your default encryption key. AWS KMS creates the default encryption key for your AWS account. Your AWS account has a different default encryption key for each AWS region.

Type: String

Required: No

MasterUsername

The name of the master user for the restored DB cluster.

Constraints:

  • Must be 1 to 16 alphanumeric characters.

  • First character must be a letter.

  • Cannot be a reserved word for the chosen database engine.

Type: String

Required: Yes

MasterUserPassword

The password for the master database user. This password can contain any printable ASCII character except "/", """, or "@".

Constraints: Must contain from 8 to 41 characters.

Type: String

Required: Yes

OptionGroupName

A value that indicates that the restored DB cluster should be associated with the specified option group.

Permanent options cannot be removed from an option group. An option group cannot be removed from a DB cluster once it is associated with a DB cluster.

Type: String

Required: No

Port

The port number on which the instances in the restored DB cluster accept connections.

Default: 3306

Type: Integer

Required: No

PreferredBackupWindow

The daily time range during which automated backups are created if automated backups are enabled using the BackupRetentionPeriod parameter.

Default: A 30-minute window selected at random from an 8-hour block of time per region. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

Constraints:

  • Must be in the format hh24:mi-hh24:mi.

  • Times should be in Universal Coordinated Time (UTC).

  • Must not conflict with the preferred maintenance window.

  • Must be at least 30 minutes.

Type: String

Required: No

PreferredMaintenanceWindow

The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC).

Format: ddd:hh24:mi-ddd:hh24:mi

Default: A 30-minute window selected at random from an 8-hour block of time per region, occurring on a random day of the week. To see the time blocks available, see Adjusting the Preferred Maintenance Window in the Amazon RDS User Guide.

Valid Days: Mon, Tue, Wed, Thu, Fri, Sat, Sun

Constraints: Minimum 30-minute window.

Type: String

Required: No

S3BucketName

The name of the Amazon S3 bucket that contains the data used to create the Amazon Aurora DB cluster.

Type: String

Required: Yes

S3IngestionRoleArn

The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that authorizes Amazon RDS to access the Amazon S3 bucket on your behalf.

Type: String

Required: Yes

S3Prefix

The prefix for all of the file names that contain the data used to create the Amazon Aurora DB cluster. If you do not specify a SourceS3Prefix value, then the Amazon Aurora DB cluster is created by using all of the files in the Amazon S3 bucket.

Type: String

Required: No

SourceEngine

The identifier for the database engine that was backed up to create the files stored in the Amazon S3 bucket.

Valid values: mysql

Type: String

Required: Yes

SourceEngineVersion

The version of the database that the backup files were created from.

MySQL version 5.5 and 5.6 are supported.

Example: 5.6.22

Type: String

Required: Yes

StorageEncrypted

Specifies whether the restored DB cluster is encrypted.

Type: Boolean

Required: No

Tags.Tag.N

A list of tags.

Type: Array of Tag objects

Required: No

VpcSecurityGroupIds.VpcSecurityGroupId.N

A list of EC2 VPC security groups to associate with the restored DB cluster.

Type: Array of strings

Required: No

Response Elements

The following element is returned by the service.

DBCluster

Contains the result of a successful invocation of the following actions:

This data type is used as a response element in the DescribeDBClusters action.

Type: DBCluster object

Errors

For information about the errors that are common to all actions, see Common Errors.

DBClusterAlreadyExistsFault

User already has a DB cluster with the given identifier.

HTTP Status Code: 400

DBClusterNotFoundFault

DBClusterIdentifier does not refer to an existing DB cluster.

HTTP Status Code: 404

DBClusterParameterGroupNotFound

DBClusterParameterGroupName does not refer to an existing DB Cluster parameter group.

HTTP Status Code: 404

DBClusterQuotaExceededFault

User attempted to create a new DB cluster and the user has already reached the maximum allowed DB cluster quota.

HTTP Status Code: 403

DBSubnetGroupNotFoundFault

DBSubnetGroupName does not refer to an existing DB subnet group.

HTTP Status Code: 404

InsufficientStorageClusterCapacity

There is insufficient storage available for the current action. You may be able to resolve this error by updating your subnet group to use different Availability Zones that have more storage available.

HTTP Status Code: 400

InvalidDBClusterStateFault

The DB cluster is not in a valid state.

HTTP Status Code: 400

InvalidDBSubnetGroupStateFault

The DB subnet group cannot be deleted because it is in use.

HTTP Status Code: 400

InvalidS3BucketFault

The specified Amazon S3 bucket name could not be found or Amazon RDS is not authorized to access the specified Amazon S3 bucket. Verify the SourceS3BucketName and S3IngestionRoleArn values and try again.

HTTP Status Code: 400

InvalidSubnet

The requested subnet is invalid, or multiple subnets were requested that are not all in a common VPC.

HTTP Status Code: 400

InvalidVPCNetworkStateFault

DB subnet group does not cover all Availability Zones after it is created because users' change.

HTTP Status Code: 400

KMSKeyNotAccessibleFault

Error accessing KMS key.

HTTP Status Code: 400

StorageQuotaExceeded

Request would result in user exceeding the allowed amount of storage available across all DB instances.

HTTP Status Code: 400

Example

Sample Request

Copy
https://rds.us-east-1.amazonaws.com/ ?Action=RestoreDBClusterFromS3 &DBClusterIdentifier=sample-cluster &Engine=aurora &S3BucketName=s3-ingestion-sample &SourceEngine=mysql &SourceEngineVersion=5.6.22 &MasterUsername=myawsuser &MasterUserPassword=<password> &S3IngestionRoleArn=arn:aws:iam:123456789012:role/sample-role &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SnapshotIdentifier=sample-snapshot &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20150323/us-east-1/rds/aws4_request &X-Amz-Date=20150323T165638Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=c59effef9b7b96f6a8dfed7873611df555364594f7f9acf9cd14d353114771fd

Sample Response

Copy
<RestoreDBClusterFromS3Response xmlns="http://rds.amazonaws.com/doc/2014-10-31/"> <RestoreDBClusterFromS3Result> <DBCluster> <Port>3306</Port> <Engine>aurora</Engine> <Status>creating</Status> <BackupRetentionPeriod>1</BackupRetentionPeriod> <VpcSecurityGroups> <VpcSecurityGroupMembership> <Status>active</Status> <VpcSecurityGroupId>sg-2103dc23</VpcSecurityGroupId> </VpcSecurityGroupMembership> </VpcSecurityGroups> <DBSubnetGroup>default</DBSubnetGroup> <EngineVersion>5.6.10a</EngineVersion> <Endpoint>sample-cluster.cluster-ctrayan0rynq.us-east-1.rds.amazonaws.com</Endpoint> <DBClusterParameterGroup>default.aurora5.6</DBClusterParameterGroup> <AvailabilityZones> <AvailabilityZone>us-east-1a</AvailabilityZone> <AvailabilityZone>us-east-1c</AvailabilityZone> <AvailabilityZone>us-east-1e</AvailabilityZone> </AvailabilityZones> <DBClusterIdentifier>sample-cluster</DBClusterIdentifier> <PreferredBackupWindow>04:22-04:52</PreferredBackupWindow> <PreferredMaintenanceWindow>fri:06:44-fri:07:14</PreferredMaintenanceWindow> <DBClusterMembers/> <AllocatedStorage>1</AllocatedStorage> <MasterUsername>myawsuser</MasterUsername> </DBCluster> </RestoreDBClusterFromS3Result> <ResponseMetadata> <RequestId>46d2b228-7681-11e5-3e8b-9b2c0d5d51a9</RequestId> </ResponseMetadata> </RestoreDBClusterFromS3Response>

See Also

For more information about using this API in one of the language-specific AWS SDKs, see the following: