更新时间:2024-12-16 GMT+08:00
分享

创建数据库实例

功能介绍

创建云数据库 TaurusDB实例。

该接口计划于2025-03-31下线,建议及时切换到新接口创建数据库实例

调试

您可以在API Explorer中调试该接口。

URI

POST /mysql/v3/{project_id}/instances

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

租户在某一region下的project ID。

获取方法请参见获取项目ID

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

通过调用IAM服务获取用户Token接口获取。

请求响应成功后在响应消息头中包含的“X-Subject-Token”的值即为Token值。

Content-Type

String

内容类型。 取值:application/json。

X-Language

String

请求语言类型。默认en-us。 取值范围:

  • en-us
  • zh-cn
表3 请求Body参数

参数

是否必选

参数类型

描述

charge_info

MysqlChargeInfo object

计费类型信息,支持包年包月和按需,默认为按需。 说明:DeC专属云账号不支持创建包周期。

region

String

区域ID。

name

String

实例名称。用于表示实例的名称,同一租户下,同类型的实例名可重名。

取值范围:最小为4个字符,最大为64个字符且不超过64个字节(注意:一个中文字符占用3个字节),必须以字母或中文开头,区分大小写,可以包含字母、数字、中划线、下划线或中文,不能包含其他特殊字符。

datastore

MysqlDatastore object

数据库信息。

mode

String

实例类型,目前仅支持Cluster。

flavor_ref

String

规格码。使用可参考查询数据库规格响应消息表5中的“spec_code”。

vpc_id

String

虚拟私有云ID,获取方法如下:

  • 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。
  • 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询VPC列表

subnet_id

String

子网的网络ID,获取方法如下:

  • 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。
  • 方法2:通过虚拟私有云服务的API接口查询,具体操作可参考查询子网列表

security_group_id

String

安全组ID。如果实例所选用的子网开启网络ACL进行访问控制,则该参数非必选。如果未开启ACL进行访问控制,则该参数必选。

configuration_id

String

参数模板ID。

password

String

数据库密码。 取值范围:至少包含以下字符的三种:大小写字母、数字和特殊符号|.~!@#$%^*-_=+?,()&,长度8~32个字符。 建议您输入高强度密码,以提高安全性,防止出现密码被暴力破解等安全风险。如果您输入弱密码,系统会自动判定密码非法。

backup_strategy

MysqlBackupStrategy object

自动备份策略

time_zone

String

时区。

availability_zone_mode

String

可用区类型,单可用区Single或多可用区multi。

master_availability_zone

String

主可用区。

slave_count

Integer

备节点个数。单次接口调用最多支持创建9个备节点。

volume

MysqlVolume object

volume信息。创建包周期实例可选。

tags

Array of MysqlTags objects

标签列表,根据标签键值对创建实例。

  • {key}表示标签键,不可以为空或重复。
  • {value}表示标签值,可以为空。

如果创建实例时同时使用多个标签键值对,中间使用逗号分隔开,最多包含10组。

enterprise_project_id

String

企业项目ID。如果账户开通企业项目服务则该参数必选,未开启该参数不可选。

dedicated_resource_id

String

专属资源池ID,只有开通专属资源池后才可以下发此参数。

表4 MysqlChargeInfo

参数

是否必选

参数类型

描述

charge_mode

String

计费模式。

取值范围:

  • prePaid:预付费,即包年/包月。
  • postPaid:后付费,即按需付费。

枚举值:

  • prePaid
  • postPaid

period_type

String

订购周期类型。

取值范围:

  • month:包月。
  • year:包年。

说明:“charge_mode”为“prePaid”时生效,且为必选值。

枚举值:

  • month
  • year

period_num

Integer

“charge_mode”为“prePaid”时生效,且为必选值,指定订购的时间。

取值范围:

当“period_type”为“month”时,取值为1~9。 当“period_type”为“year”时,取值为1~3。

is_auto_renew

String

创建包周期实例时可指定,表示是否自动续订,续订的周期和原周期相同,且续订时会自动支付。

  • true,为自动续订。
  • false,为不自动续订,默认该方式。

枚举值:

  • true
  • false

is_auto_pay

String

创建包周期时可指定,表示是否自动从客户的账户中支付,此字段不影响自动续订的支付方式。

  • true,为自动支付,默认该方式。
  • false,为手动支付。

枚举值:

  • true
  • false
表5 MysqlDatastore

参数

是否必选

参数类型

描述

type

String

数据库引擎,现在只支持gaussdb-mysql

version

String

数据库版本。

数据库支持的详细版本信息,可调用查询数据库引擎的版本接口获取。

kernel_version

String

内核数据库版本。如果需要指定具体的内核版本,请联系客服人员添加白名单。

完整的四位内核数据库版本,获取方法请参见查询数据库引擎的版本返回的kernel_version字段。

表6 MysqlBackupStrategy

参数

是否必选

参数类型

描述

start_time

String

自动备份开始时间段。自动备份将在该时间一个小时内触发。

取值范围:非空,格式必须为hh:mm-HH:MM且有效,当前时间指UTC时间。

  1. HH取值必须比hh大1。
  2. mm和MM取值必须相同,且取值必须为00。

keep_days

String

自动备份保留天数,取值范围:1-732

表7 MysqlVolume

参数

是否必选

参数类型

描述

size

String

磁盘大小。默认值为10,单位GB。 取值范围:10~128000,必须为10的整数倍。

表8 MysqlTags

参数

是否必选

参数类型

描述

key

String

标签键。最大长度36个unicode字符。 key不能为空或者空字符串,不能为空格。 字符集:A-Z,a-z ,0-9,‘-’,‘_’,UNICODE字符(\u4E00-\u9FFF)。

value

String

标签值。最大长度43个unicode字符。 可以为空字符串。 字符集:A-Z,a-z ,0-9,‘.’,‘-’,‘_’,UNICODE字符(\u4E00-\u9FFF)。

响应参数

状态码: 201

表9 响应Body参数

参数

参数类型

描述

instance

MysqlInstanceResponse object

实例信息

job_id

String

实例创建的任务id。

仅创建按需实例时会返回该参数。

order_id

String

订单号,创建包年包月时返回该参数。

表10 MysqlInstanceResponse

参数

参数类型

描述

id

String

实例ID。

name

String

实例名称。用于表示实例的名称,同一租户下,同类型的实例名称可相同。 取值范围:4~64个字符之间,必须以字母开头,不区分大小写,可以包含字母、数字、中划线或者下划线, 不能包含其它的特殊字符。

status

String

实例状态。

datastore

MysqlDatastore object

数据库信息。

mode

String

实例类型,仅支持Cluster。

configuration_id

String

参数组ID。

port

String

数据库端口信息。

backup_strategy

MysqlBackupStrategy object

自动备份策略

enterprise_project_id

String

企业项目ID。

region

String

区域ID,与请求参数相同。

availability_zone_mode

String

可用区模式,与请求参数相同。

master_availability_zone

String

主可用区ID。

vpc_id

String

虚拟私有云ID,与请求参数相同。

security_group_id

String

安全组ID,与请求参数相同。

subnet_id

String

子网ID,与请求参数相同。

flavor_ref

String

规格码,与请求参数相同。

charge_info

MysqlChargeInfo object

计费类型信息,支持包年包月和按需,默认为按需。

表11 MysqlDatastore

参数

参数类型

描述

type

String

数据库引擎,现在只支持gaussdb-mysql

version

String

数据库版本。

数据库支持的详细版本信息,可调用查询数据库引擎的版本接口获取。

kernel_version

String

内核数据库版本。如果需要指定具体的内核版本,请联系客服人员添加白名单。

表12 MysqlBackupStrategy

参数

参数类型

描述

start_time

String

自动备份开始时间段。自动备份将在该时间一个小时内触发。

取值范围:非空,格式必须为hh:mm-HH:MM且有效,当前时间指UTC时间。

  1. HH取值必须比hh大1。
  2. mm和MM取值必须相同,且取值必须为00。

keep_days

String

自动备份保留天数,取值范围:1-732

表13 MysqlChargeInfo

参数

参数类型

描述

charge_mode

String

计费模式。

取值范围:

  • prePaid:预付费,即包年/包月。
  • postPaid:后付费,即按需付费。

枚举值:

  • prePaid
  • postPaid

period_type

String

订购周期类型。

取值范围:

  • month:包月。
  • year:包年。

说明:“charge_mode”为“prePaid”时生效,且为必选值。

枚举值:

  • month
  • year

period_num

Integer

“charge_mode”为“prePaid”时生效,且为必选值,指定订购的时间。

取值范围:

当“period_type”为“month”时,取值为1~9。 当“period_type”为“year”时,取值为1~3。

is_auto_renew

String

创建包周期实例时可指定,表示是否自动续订,续订的周期和原周期相同,且续订时会自动支付。

  • true,为自动续订。
  • false,为不自动续订,默认该方式。

枚举值:

  • true
  • false

is_auto_pay

String

创建包周期时可指定,表示是否自动从客户的账户中支付,此字段不影响自动续订的支付方式。

  • true,为自动支付,默认该方式。
  • false,为手动支付。

枚举值:

  • true
  • false

状态码: 400

表14 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误消息。

状态码: 500

表15 响应Body参数

参数

参数类型

描述

error_code

String

错误码。

error_msg

String

错误消息。

请求示例

创建实例

POST https://{endpoint}/mysql/v3/054e292c9880d4992f02c0196d3ea468/instances

{
  "name" : "gaussdb-mysql-instance1",
  "region" : "br-iaas-odin1",
  "charge_info" : {
    "charge_mode" : "postPaid"
  },
  "datastore" : {
    "type" : "gaussdb-mysql",
    "version" : "8.0"
  },
  "mode" : "Cluster",
  "flavor_ref" : "gaussdb.mysql.large.x86.4",
  "vpc_id" : "3cedfc54-b105-4652-a4e0-847b11576b58",
  "subnet_id" : "c1cfa53c-65d3-431e-8552-326bf310c7ad",
  "security_group_id" : "fc577a1a-f202-424a-977f-24faec3fdd55",
  "configuration_id" : "43570e0de32e40c5a15f831aa5ce4176pr07",
  "password" : "Hu2wei@13",
  "backup_strategy" : {
    "start_time" : "08:00-09:00"
  },
  "availability_zone_mode" : "single",
  "slave_count" : 1,
  "enterprise_project_id" : 0
}

响应示例

状态码: 201

Success.

{
  "instance" : {
    "id" : "5eebbb4c0f9f4a99b42ed1b6334569aain07",
    "name" : "gaussdb-mysql-instance1",
    "status" : "BUILD",
    "region" : "br-iaas-odin1",
    "charge_info" : {
      "charge_mode" : "postPaid"
    },
    "datastore" : {
      "type" : "gaussdb-mysql",
      "version" : "8.0",
      "kernel_version" : "2.0.51.240300"
    },
    "mode" : "Cluster",
    "port" : "3306",
    "enterprise_project_id" : "0",
    "flavor_ref" : "gaussdb.mysql.large.x86.4",
    "vpc_id" : "3cedfc54-b105-4652-a4e0-847b11576b58",
    "subnet_id" : "c1cfa53c-65d3-431e-8552-326bf310c7ad",
    "security_group_id" : "fc577a1a-f202-424a-977f-24faec3fdd55",
    "configuration_id" : "43570e0de32e40c5a15f831aa5ce4176pr07",
    "backup_strategy" : {
      "start_time" : "08:00-09:00",
      "keep_days" : 7
    },
    "availability_zone_mode" : "single",
    "slave_count" : 1
  },
  "job_id" : "dff1d289-4d03-4942-8b9f-463ea07c000d"
}

状态码

状态码

描述

201

Success.

400

Client error.

500

Server error.

错误码

请参见错误码

相关文档