Amazon Relational Database Service
API Reference (API Version 2012-04-23)
Print this pageEmail this pageGo to the ForumsView the PDFShare this page on TwitterShare this page on FacebookBookmark this page on DeliciousSubmit this page to RedditSubmit this page to DiggDid this page help you?  Yes  No   Tell us about it...

RestoreDBInstanceFromDBSnapshot

Description

Creates a new DB Instance from a DB snapshot. The target database is created from the source database restore point with the same configuration as the original source database, except that the new RDS instance is created with the default security group.

Request Parameters

For information about the common parameters that all actions use, see Common Query Parameters.

Name Description Required
AutoMinorVersionUpgrade

Indicates that minor version upgrades will be applied automatically to the DB Instance during the maintenance window.

Type: Boolean

No
AvailabilityZone

The EC2 Availability Zone that the database instance will be created in.

Default: A random, system-chosen Availability Zone.

Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

Example: us-east-1a

Type: String

No
DBInstanceClass

The compute and memory capacity of the Amazon RDS DB instance.

Valid Values: db.t1.micro | db.m1.small | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge

Type: String

No
DBInstanceIdentifier

The identifier for the DB Snapshot to restore from.

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

Type: String

Yes
DBName

The database name for the restored DB Instance.

[Note]Note

This parameter doesn't apply to the MySQL engine.

Type: String

No
DBSnapshotIdentifier

Name of the DB Instance to create from the DB Snapshot. This parameter isn't case sensitive.

Constraints:

  • Must contain from 1 to 255 alphanumeric characters or hyphens
  • First character must be a letter
  • Cannot end with a hyphen or contain two consecutive hyphens

Example: my-snapshot-id

Type: String

Yes
DBSubnetGroupName

The DB Subnet Group name to use for the new instance.

Type: String

No
Engine

The database engine to use for the new instance.

Default: The same as source

Constraint: Must be compatible with the engine of the source

Example: oracle-ee

Type: String

No
LicenseModel

License model information for the restored DB Instance.

Default: Same as source.

Valid values: license-included | bring-your-own-license | general-public-license

Type: String

No
MultiAZ

Specifies if the DB Instance is a Multi-AZ deployment.

Constraint: You cannot specify the AvailabilityZone parameter if the MultiAZ parameter is set to true.

Type: Boolean

No
OptionGroupName

Type: String

No
Port

The port number on which the database accepts connections.

Default: The same port as the original DB Instance

Constraints: Value must be 1150-65535

Type: Integer

No

Response Elements

The following elements come wrapped in a DBInstance structure.
NameDescription
AllocatedStorage

Specifies the allocated storage size specified in gigabytes.

Type: Integer

AutoMinorVersionUpgrade

Indicates that minor version patches are applied automatically.

Type: Boolean

AvailabilityZone

Specifies the name of the Availability Zone the DB Instance is located in.

Type: String

BackupRetentionPeriod

Specifies the number of days for which automatic DB Snapshots are retained.

Type: Integer

CharacterSetName

If present, specifies the name of the character set that this instance is associated with.

Type: String

DBInstanceClass

Contains the name of the compute and memory capacity class of the DB Instance.

Type: String

DBInstanceIdentifier

Contains a user-supplied database identifier. This is the unique key that identifies a DB Instance.

Type: String

DBInstanceStatus

Specifies the current state of this database.

Type: String

DBName

The meaning of this parameter differs according to the database engine you use.

MySQL

Contains the name of the initial database of this instance that was provided at create time, if one was specified when the DB Instance was created. This same name is returned for the life of the DB Instance.

Type: String

Oracle

Contains the Oracle System ID (SID) of the created DB Instance.

Type: String

DBParameterGroups

Provides the list of DB Parameter Groups applied to this DB Instance.

Type: DBParameterGroupStatus list

DBSecurityGroups

Provides List of DB Security Group elements containing only DBSecurityGroup.Name and DBSecurityGroup.Status subelements.

Type: DBSecurityGroupMembership list

DBSubnetGroup

Provides the inforamtion of the subnet group associated with the DB instance, including the name, descrption and subnets in the subnet group.

Type: DBSubnetGroup

Endpoint

Specifies the connection endpoint.

Type: Endpoint

Engine

Provides the name of the database engine to be used for this DB Instance.

Type: String

EngineVersion

Indicates the database engine version.

Type: String

InstanceCreateTime

Provides the date and time the DB Instance was created.

Type: DateTime

LatestRestorableTime

Specifies the latest time to which a database can be restored with point-in-time restore.

Type: DateTime

LicenseModel

License model information for this DB Instance.

Type: String

MasterUsername

Contains the master username for the DB Instance.

Type: String

MultiAZ

Specifies if the DB Instance is a Multi-AZ deployment.

Type: Boolean

OptionGroupMembership

Specifies the name and status of the option group that this instance belongs to.

Type: OptionGroupMembership

PendingModifiedValues

Specifies that changes to the DB Instance are pending. This element is only included when changes are pending. Specific changes are identified by subelements.

Type: PendingModifiedValues

PreferredBackupWindow

Specifies the daily time range during which automated backups are created if automated backups are enabled, as determined by the BackupRetentionPeriod.

Type: String

PreferredMaintenanceWindow

Specifies the weekly time range (in UTC) during which system maintenance can occur.

Type: String

ReadReplicaDBInstanceIdentifiers

Contains one or more identifiers of the Read Replicas associated with this DB Instance.

Type: String list

ReadReplicaSourceDBInstanceIdentifier

Contains the identifier of the source DB Instance if this DB Instance is a Read Replica.

Type: String

Errors

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

Error Description HTTP Status Code
DBInstanceAlreadyExists

User already has a DB Instance with the given identifier.

400
DBSnapshotNotFound

DBSnapshotIdentifier does not refer to an existing DB Snapshot.

404
DBSubnetGroupNotFound

DBSubnetGroupName does not refer to an existing DB Subnet Group.

400
InstanceQuotaExceeded

Request would result in user exceeding the allowed number of DB Instances.

400
InsufficientDBInstanceCapacity

Specified DB Instance class is not available in the specified Availability Zone.

400
InvalidDBSnapshotState

The state of the DB Security Snapshot does not allow deletion.

400
InvalidRestore

Cannot restore from vpc backup to non-vpc DB instance.

400
InvalidVPCNetworkState

DB Subnet Group does not cover all availability zones after it is created because users' change.

400
StorageQuotaExceeded

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

400

Examples

Sample Request

https://rds.amazon.com/
   ?Action=RestoreDBInstanceFromDBSnapshot
   &DBSnapshotIdentifier=mydbsnapshot
   &DBInstanceIdentifier=myrestoreddbinstance
   &Version=2012-04-23
   &Timestamp=2011-05-23T06%3A47%3A11.071Z
   &SignatureVersion=2
   &SignatureMethod=HmacSHA256
   &AWSAccessKeyId=<AWS Access Key ID>
   &Signature=<Signature>

Sample Response

<RestoreDBInstanceFromDBSnapshotResponse xmlns="http://rds.amazonaws.com/doc/2012-04-23/">
  <RestoreDBInstanceFromDBSnapshotResult>
    <DBInstance>
      <ReadReplicaDBInstanceIdentifiers/>
      <Engine>mysql</Engine>
      <PendingModifiedValues/>
      <BackupRetentionPeriod>1</BackupRetentionPeriod>
      <MultiAZ>false</MultiAZ>
      <LicenseModel>general-public-license</LicenseModel>
      <DBInstanceStatus>creating</DBInstanceStatus>
      <EngineVersion>5.1.50</EngineVersion>
      <DBInstanceIdentifier>myrestoreddbinstance</DBInstanceIdentifier>
      <DBParameterGroups>
        <DBParameterGroup>
          <ParameterApplyStatus>in-sync</ParameterApplyStatus>
          <DBParameterGroupName>default.mysql5.1</DBParameterGroupName>
        </DBParameterGroup>
      </DBParameterGroups>
      <DBSecurityGroups>
        <DBSecurityGroup>
          <Status>active</Status>
          <DBSecurityGroupName>default</DBSecurityGroupName>
        </DBSecurityGroup>
      </DBSecurityGroups>
      <PreferredBackupWindow>00:00-00:30</PreferredBackupWindow>
      <AutoMinorVersionUpgrade>true</AutoMinorVersionUpgrade>
      <PreferredMaintenanceWindow>sat:07:30-sat:08:00</PreferredMaintenanceWindow>
      <AllocatedStorage>10</AllocatedStorage>
      <DBInstanceClass>db.m1.large</DBInstanceClass>
      <MasterUsername>master</MasterUsername>
    </DBInstance>
  </RestoreDBInstanceFromDBSnapshotResult>
  <ResponseMetadata>
    <RequestId>7ca622e8-8508-11e0-bd9b-a7b1ece36d51</RequestId>
  </ResponseMetadata>
</RestoreDBInstanceFromDBSnapshotResponse>