Creates a new database in Amazon Lightsail.
The create relational database
operation supports tag-based access control via request tags. For more information, see the Amazon Lightsail Developer Guide .
See also: AWS API Documentation
See ‘aws help’ for descriptions of global parameters.
create-relational-database
--relational-database-name <value>
[--availability-zone <value>]
--relational-database-blueprint-id <value>
--relational-database-bundle-id <value>
--master-database-name <value>
--master-username <value>
[--master-user-password <value>]
[--preferred-backup-window <value>]
[--preferred-maintenance-window <value>]
[--publicly-accessible | --no-publicly-accessible]
[--tags <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
--relational-database-name
(string)
The name to use for your new Lightsail database resource.
Constraints:
Must contain from 2 to 255 alphanumeric characters, or hyphens.
The first and last character must be a letter or number.
--availability-zone
(string)
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 theinclude relational database Availability Zones
parameter to your request.
--relational-database-blueprint-id
(string)
The blueprint ID for your new database. A blueprint describes the major engine version of a database.
You can get a list of database blueprints IDs by using the
get relational database blueprints
operation.
--relational-database-bundle-id
(string)
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.
--master-database-name
(string)
The meaning of this parameter differs according to the database engine you use.
MySQL
The name of the database to create when the Lightsail database resource is created. If this parameter isn’t specified, no database is created in the database resource.
Constraints:
Must contain 1 to 64 letters or numbers.
Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0- 9).
Can’t be a word reserved by the specified database engine. For more information about reserved words in MySQL, see the Keywords and Reserved Words articles for MySQL 5.6 , MySQL 5.7 , and MySQL 8.0 .
PostgreSQL
The name of the database to create when the Lightsail database resource is created. If this parameter isn’t specified, a database named
postgres
is created in the database resource.Constraints:
Must contain 1 to 63 letters or numbers.
Must begin with a letter. Subsequent characters can be letters, underscores, or digits (0- 9).
Can’t be a word reserved by the specified database engine. For more information about reserved words in PostgreSQL, see the SQL Key Words articles for PostgreSQL 9.6 , PostgreSQL 10 , PostgreSQL 11 , and PostgreSQL 12 .
--master-username
(string)
The name for the master user.
MySQL
Constraints:
Required for MySQL.
Must be 1 to 16 letters or numbers. Can contain underscores.
First character must be a letter.
Can’t be a reserved word for the chosen database engine. For more information about reserved words in MySQL 5.6 or 5.7, see the Keywords and Reserved Words articles for MySQL 5.6 , MySQL 5.7 , or MySQL 8.0 .
PostgreSQL
Constraints:
Required for PostgreSQL.
Must be 1 to 63 letters or numbers. Can contain underscores.
First character must be a letter.
Can’t be a reserved word for the chosen database engine. For more information about reserved words in MySQL 5.6 or 5.7, see the Keywords and Reserved Words articles for PostgreSQL 9.6 , PostgreSQL 10 , PostgreSQL 11 , and PostgreSQL 12 .
--master-user-password
(string)
The password for the master user. The password can include any printable ASCII character except “/”, “””, or “@”. It cannot contain spaces.
MySQL
Constraints: Must contain from 8 to 41 characters.
PostgreSQL
Constraints: Must contain from 8 to 128 characters.
--preferred-backup-window
(string)
The daily time range during which automated backups are created for your new database if automated backups are enabled.
The default is a 30-minute window selected at random from an 8-hour block of time for each AWS Region. For more information about the preferred backup window time blocks for each region, see the Working With Backups guide in the Amazon Relational Database Service (Amazon RDS) documentation.
Constraints:
Must be in the
hh24:mi-hh24:mi
format. Example:16:00-16:30
Specified in Coordinated Universal Time (UTC).
Must not conflict with the preferred maintenance window.
Must be at least 30 minutes.
--preferred-maintenance-window
(string)
The weekly time range during which system maintenance can occur on your new database.
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.
Constraints:
Must be in the
ddd:hh24:mi-ddd:hh24:mi
format.Valid days: Mon, Tue, Wed, Thu, Fri, Sat, Sun.
Must be at least 30 minutes.
Specified in Coordinated Universal Time (UTC).
Example:
Tue:17:00-Tue:17:30
--publicly-accessible
| --no-publicly-accessible
(boolean)
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 offalse
specifies a database that is available only to your Lightsail resources in the same region as your database.
--tags
(list)
The tag keys and optional values to add to the resource during create.
Use the
TagResource
action to tag a resource after it’s created.(structure)
Describes a tag key and optional value assigned to an Amazon Lightsail resource.
For more information about tags in Lightsail, see the Amazon Lightsail Developer Guide .
key -> (string)
The key of the tag.
Constraints: Tag keys accept a maximum of 128 letters, numbers, spaces in UTF-8, or the following characters: + - = . _ : / @
value -> (string)
The value of the tag.
Constraints: Tag values accept a maximum of 256 letters, numbers, spaces in UTF-8, or the following characters: + - = . _ : / @
Shorthand Syntax:
key=string,value=string ...
JSON Syntax:
[
{
"key": "string",
"value": "string"
}
...
]
--cli-input-json
| --cli-input-yaml
(string)
Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton
. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml
.
--generate-cli-skeleton
(string)
Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input
, prints a sample input JSON that can be used as an argument for --cli-input-json
. Similarly, if provided yaml-input
it will print a sample input YAML that can be used with --cli-input-yaml
. If provided with the value output
, it validates the command inputs and returns a sample output JSON for that command. The generated JSON skeleton is not stable between versions of the AWS CLI and there are no backwards compatibility guarantees in the JSON skeleton generated.
See ‘aws help’ for descriptions of global parameters.
Note
To use the following examples, you must have the AWS CLI installed and configured. See the Getting started guide in the AWS CLI User Guide for more information.
Unless otherwise stated, all examples have unix-like quotation rules. These examples will need to be adapted to your terminal’s quoting rules. See Using quotation marks with strings in the AWS CLI User Guide .
To create a managed database
The following create-relational-database
example creates a managed database in the specified AWS Region and Availability Zone, using the MySQL 5.6 database engine (mysql_5_6), and the $15 USD standard database bundle (micro_1_0). The managed database is pre-populated a master user name, and is not publicly accessible.
aws lightsail create-relational-database \
--relational-database-name Database-1 \
--availability-zone us-west-2a \
--relational-database-blueprint-id mysql_5_6 \
--relational-database-bundle-id micro_1_0 \
--master-database-name dbmaster \
--master-username user \
--no-publicly-accessible
Output:
{
"operations": [
{
"id": "b52bedee-73ed-4798-8d2a-9c12df89adcd",
"resourceName": "Database-1",
"resourceType": "RelationalDatabase",
"createdAt": 1569450017.244,
"location": {
"availabilityZone": "us-west-2a",
"regionName": "us-west-2"
},
"isTerminal": false,
"operationType": "CreateRelationalDatabase",
"status": "Started",
"statusChangedAt": 1569450018.637
}
]
}
operations -> (list)
An array of objects that describe the result of the action, such as the status of the request, the timestamp of the request, and the resources affected by the request.
(structure)
Describes the API operation.
id -> (string)
The ID of the operation.
resourceName -> (string)
The resource name.
resourceType -> (string)
The resource type.
createdAt -> (timestamp)
The timestamp when the operation was initialized (e.g.,
1479816991.349
).location -> (structure)
The Amazon Web Services Region and Availability Zone.
availabilityZone -> (string)
The Availability Zone. Follows the format
us-east-2a
(case-sensitive).regionName -> (string)
The AWS Region name.
isTerminal -> (boolean)
A Boolean value indicating whether the operation is terminal.
operationDetails -> (string)
Details about the operation (e.g.,
Debian-1GB-Ohio-1
).operationType -> (string)
The type of operation.
status -> (string)
The status of the operation.
statusChangedAt -> (timestamp)
The timestamp when the status was changed (e.g.,
1479816991.349
).errorCode -> (string)
The error code.
errorDetails -> (string)
The error details.