Amazon Lightsail
API Reference (API Version 2016-11-28)

CreateRelationalDatabaseFromSnapshot

Creates a new database from an existing database snapshot in Amazon Lightsail.

You can create a new database from a snapshot in if something goes wrong with your original database, or to change it to a different plan, such as a high availability or standard plan.

The create relational database from snapshot operation supports tag-based access control via request tags and resource tags applied to the resource identified by relationalDatabaseSnapshotName. For more information, see the Lightsail Dev Guide.

Request Syntax

{ "availabilityZone": "string", "publiclyAccessible": boolean, "relationalDatabaseBundleId": "string", "relationalDatabaseName": "string", "relationalDatabaseSnapshotName": "string", "restoreTime": number, "sourceRelationalDatabaseName": "string", "tags": [ { "key": "string", "value": "string" } ], "useLatestRestorableTime": boolean }

Request Parameters

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

The request accepts the following data in JSON format.

availabilityZone

The Availability Zone in which to create your new database. Use the us-east-2a case-sensitive format.

You can get a list of Availability Zones by using the get regions operation. Be sure to add the include relational database Availability Zones parameter to your request.

Type: String

Required: No

publiclyAccessible

Specifies the accessibility options for your new database. A value of true specifies a database that is available to resources outside of your Lightsail account. A value of false specifies a database that is available only to your Lightsail resources in the same region as your database.

Type: Boolean

Required: No

relationalDatabaseBundleId

The bundle ID for your new database. A bundle describes the performance specifications for your database.

You can get a list of database bundle IDs by using the get relational database bundles operation.

When creating a new database from a snapshot, you cannot choose a bundle that is smaller than the bundle of the source database.

Type: String

Required: No

relationalDatabaseName

The name to use for your new database.

Constraints:

  • Must contain from 2 to 255 alphanumeric characters, or hyphens.

  • The first and last character must be a letter or number.

Type: String

Pattern: \w[\w\-]*\w

Required: Yes

relationalDatabaseSnapshotName

The name of the database snapshot from which to create your new database.

Type: String

Pattern: \w[\w\-]*\w

Required: No

restoreTime

The date and time to restore your database from.

Constraints:

  • Must be before the latest restorable time for the database.

  • Cannot be specified if the use latest restorable time parameter is true.

  • Specified in Universal Coordinated Time (UTC).

  • Specified in the Unix time format.

    For example, if you wish to use a restore time of October 1, 2018, at 8 PM UTC, then you input 1538424000 as the restore time.

Type: Timestamp

Required: No

sourceRelationalDatabaseName

The name of the source database.

Type: String

Pattern: \w[\w\-]*\w

Required: No

tags

The tag keys and optional values to add to the resource during create.

To tag a resource after it has been created, see the tag resource operation.

Type: Array of Tag objects

Required: No

useLatestRestorableTime

Specifies whether your database is restored from the latest backup time. A value of true restores from the latest backup time.

Default: false

Constraints: Cannot be specified if the restore time parameter is provided.

Type: Boolean

Required: No

Response Syntax

{ "operations": [ { "createdAt": number, "errorCode": "string", "errorDetails": "string", "id": "string", "isTerminal": boolean, "location": { "availabilityZone": "string", "regionName": "string" }, "operationDetails": "string", "operationType": "string", "resourceName": "string", "resourceType": "string", "status": "string", "statusChangedAt": number } ] }

Response Elements

If the action is successful, the service sends back an HTTP 200 response.

The following data is returned in JSON format by the service.

operations

An object describing the result of your create relational database from snapshot request.

Type: Array of Operation objects

Errors

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

AccessDeniedException

Lightsail throws this exception when the user cannot be authenticated or uses invalid credentials to access a resource.

HTTP Status Code: 400

AccountSetupInProgressException

Lightsail throws this exception when an account is still in the setup in progress state.

HTTP Status Code: 400

InvalidInputException

Lightsail throws this exception when user input does not conform to the validation rules of an input field.

Note

Domain-related APIs are only available in the N. Virginia (us-east-1) Region. Please set your AWS Region configuration to us-east-1 to create, view, or edit these resources.

HTTP Status Code: 400

NotFoundException

Lightsail throws this exception when it cannot find a resource.

HTTP Status Code: 400

OperationFailureException

Lightsail throws this exception when an operation fails to execute.

HTTP Status Code: 400

ServiceException

A general service exception.

HTTP Status Code: 500

UnauthenticatedException

Lightsail throws this exception when the user has not been authenticated.

HTTP Status Code: 400

See Also

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