Creating a Database
Function
This API is used to create a database in a specified DB instance.
- Before calling an API, you need to understand the API in Authentication.
Constraints
- This operation cannot be performed when the DB instance is in any of the following statuses: creating, changing instance class, changing port, or abnormal.
- If you create a database using other methods instead of invoking a v3 API, for example, logging in to a node or using a client tool, the database name verification rule is inconsistent with that of the v3 API. As a result, the v3 API may fail to be invoked to perform operations on the database.
URI
- Parameter description
Table 1 Parameter description Name
Mandatory
Description
project_id
Yes
Specifies the project ID of a tenant in a region.
For details about how to obtain the project ID, see Obtaining a Project ID.
instance_id
Yes
Specifies the DB instance ID.
Request
Name |
Mandatory |
Type |
Description |
---|---|---|---|
name |
Yes |
String |
Specifies the database name. The value contains 1 to 63 characters, including letters, digits, and underscores (_). It cannot start with pg or a digit, and must be different from RDS for PostgreSQL template library names. RDS for PostgreSQL template libraries include postgres, template0, and template1. |
owner |
No |
String |
Specifies the database user. The default value is root. The value must be an existing username and must be different from system usernames. System users include rdsAdmin, rdsMetric, rdsBackup, rdsRepl, rdsProxy, and rdsDdm. |
template |
No |
String |
Specifies the name of the database template. The value can be template0 or template1 (default value). |
character_set |
No |
String |
Specifies the database character set. The default value is UTF8. |
lc_collate |
No |
String |
Specifies the database collocation. The default value is en_US.UTF-8.
NOTICE:
For different collation rules, the execution result of a statement may be different. For example, the execution result of select 'a'>'A'; is false when this parameter is set to en_US.utf8 and is true when this parameter is set to 'C'. If a database is migrated from "O" to PostgreSQL, this parameter needs to be set to 'C' to meet your expectations. You can query the supported collation rules from the pg_collation table. |
lc_ctype |
No |
String |
Specifies the database classification. The default value is en_US.UTF-8. |
Example Request
Creating a database named rds_test
{ "name": "rds_test", "owner": "test", "template": "template0", "character_set": "UTF8", "lc_collate": "en_US.UTF-8", "lc_ctype": "en_US.UTF-8" }
Response
- Normal response
Table 3 Parameter description Name
Type
Description
resp
String
Returns successful if the invoking is successful.
- Example normal response
{ "resp": "successful" }
- Abnormal response
For details, see Abnormal Request Results.
Status Code
- Normal
- Abnormal
For details, see Status Codes.
Error Code
For details, see Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.