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

创建数据库实例

功能介绍

创建GaussDB实例。GaussDB支持创建分布式实例。

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

URI

POST https://{Endpoint}/opengauss/v3/{project_id}/instances
表1 参数说明

名称

是否必选

说明

project_id

参数解释:

租户在某一Region下的项目ID。

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

约束限制:

不涉及。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

默认取值

不涉及。

请求参数

表2 请求参数

名称

是否必选

参数类型

说明

name

String

参数解释:

实例名称。

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

约束限制:

不涉及

取值范围:

4~64个字符之间,必须以字母开头,区分大小写,可以包含字母、数字、中划线或者下划线,不能包含其他的特殊字符。

默认取值

不涉及。

datastore

Object

参数解释:

数据库信息。

详情请参见表3

约束限制:

不涉及。

ha

Object

参数解释:

实例部署形态。详情请参见表4

约束限制:

不涉及。

configuration_id

String

参数解释:

参数模板ID。

约束限制:

不涉及

取值范围:

只能由英文字母、数字组成,且长度为36个字符。

默认取值

当不传该参数时,使用系统默认的参数模板。

port

String

参数解释:

数据库端口信息。

约束限制:

不涉及。

取值范围:

GaussDB数据库端口设置范围为1024~39998(其中2378,2379,2380,4999,5000,5999,6000,6001,8097,8098,12016,12017,20049,20050,21731,21732,32122,32123,32124被系统占用不可设置)。

默认取值

GaussDB默认8000。

password

String

参数解释:

数据库密码。

建议您输入高强度密码,以提高安全性,防止出现密码被暴力破解等安全风险。

约束限制:

不涉及。

取值范围:

非空; 至少包含大写字母(A-Z),小写字母(a-z),数字(0-9),非字母数字字符(限定为~!@#%^*-_=+?,)四类字符中的三类字符;长度8~32个字符。

默认取值

不涉及。

backup_strategy

Object

参数解释:

备份策略。

详情请参见表5

约束限制:

不涉及。

enterprise_project_id

String

参数解释:

企业项目ID。只有企业租户时该参数才生效。

使用请参考《企业管理 API参考》的“查询企业项目列表”响应消息表“enterprise_project字段数据结构说明”的“id”。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

disk_encryption_id

String

参数解释:

用于磁盘加密的密钥ID。

约束限制:

不涉及

取值范围:

不涉及。

默认取值

默认为空。

flavor_ref

String

参数解释:

规格码。参考查询数据库规格中“spec_code”字段获取。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

volume

Object

参数解释:

volume信息。详情请参见表6

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

region

String

参数解释:

区域ID。创建实例所处的区域。

获取方式,请参见地区和终端节点

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

availability_zone

String

参数解释:

可用区ID,创建实例所处的az。

可选部署在同一可用区或三个不同可用区,可用区之间用逗号隔开。详见示例。

  • 部署在同一可用区:需要输入三个相同的可用区。例如:部署在“cn-north-4a”可用区,则需要在此处输入"cn-north-4a,cn-north-4a,cn-north-4a"。
  • 部署在三个不同可用区:需要分别输入三个不同的可用区。

获取方式,请参见地区和终端节点

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

vpc_id

String

参数解释:

虚拟私有云ID,创建实例所处的虚拟私有云。

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

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

subnet_id

String

参数解释:

子网的网络ID信息,创建实例所处的子网。

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

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

security_group_id

String

参数解释:

指定实例所属的安全组。如果不需要指定安全组,请联系客服申请白名单。

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

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

charge_info

Object

参数解释:

计费类型信息,仅支持按需。

详情请参见表7

约束限制:

不涉及。

time_zone

String

参数解释:

UTC时区。

  • 不选择时,GaussDB国内站、默认为UTC时间。
  • 选择填写时,取值范围为UTC-12:00~UTC+12:00,且只支持整段时间,如UTC+08:00,不支持UTC+08:30。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

sharding_num

Integer

参数解释:

分片数量。

约束限制:

不涉及。

取值范围:

取值范围1~9。

默认取值

不涉及。

coordinator_num

Integer

参数解释:

协调节点数量。

约束限制:

不涉及。

取值范围:

取值范围1~9。CN数量必须小于或等于两倍的分片数。

默认取值

不涉及。

replica_num

Integer

参数解释:

实例副本数。

约束限制:

不涉及。

取值范围:

支持取值2,3。

默认取值

默认为3。

说明:

2副本选项仅针对特定用户开放,如需配置白名单权限,您可以在管理控制台右上角,选择“工单 > 新建工单”,提交开通白名单的申请。

表3 datastore字段数据结构说明

名称

是否必选

参数类型

说明

type

String

参数解释:

数据库引擎。

约束限制:

不涉及。

取值范围:

GaussDB

默认取值

不涉及。

version

String

参数解释:

数据库版本。GaussDB支持的版本参考查询数据库引擎的版本

约束限制:

不涉及。

取值范围:

GaussDB

默认取值

默认为当前最新版本。

表4 ha字段数据结构说明

名称

是否必选

参数类型

说明

mode

String

参数解释:

GaussDB为分布式模式。

约束限制:

不涉及。

取值范围:

enterprise(企业版) ,不区分大小写。。

默认取值

不涉及。

replication_mode

String

参数解释:

备机同步参数。

约束限制:

不涉及。

取值范围:

“sync"。

默认取值

不涉及。

说明:

“sync”为同步模式。

consistency

String

参数解释:

指定事务一致性类型。

约束限制:

不涉及。

取值范围:

strong(强一致性) | eventual(最终一致性),不分区大小写。

默认取值

不涉及。

表5 backup_strategy字段数据结构说明

名称

是否必选

参数类型

说明

start_time

String

参数解释:

备份时间段。自动备份将在该时间段内触发。格式必须为hh:mm-HH:MM且有效,当前时间指UTC时间。

  • HH取值必须比hh大1。
  • mm和MM取值必须相同,且取值必须为00、15、30或45。

示例:

  • 08:15-09:15
  • 23:00-00:00

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

keep_days

Integer

参数解释:

指定备份文件的可保存天数。

约束限制:

不涉及。

取值范围:

[1, 732]

默认取值

默认填写为7天。

表6 volume字段数据结构说明

名称

是否必选

参数类型

说明

type

String

参数解释:

磁盘类型。

约束限制:

不涉及。

取值范围:

仅支持ULTRAHIGH,区分大小写,表示SSD盘。

默认取值

不涉及。

size

Integer

参数解释:

磁盘大小。例如:该参数填写为“40”,表示为创建的实例分配40GB的磁盘空间。

取值范围:(分片数*40GB)~(分片数*16TB),且大小只能为分片数*4的整数倍。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值

不涉及。

表7 chargeInfo字段数据结构说明

名称

是否必选

参数类型

说明

charge_mode

String

参数解释:

计费模式。

约束限制:

不涉及。

取值范围:

仅支持postPaid,后付费,即按需付费。

默认取值

不涉及。

响应参数

表8 响应参数

名称

参数类型

说明

instance

Object

参数解释:

实例信息。

详情请参见表9

job_id

String

参数解释:

实例创建的任务ID。

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

取值范围:

不涉及。

表9 instance说明

名称

参数类型

说明

id

String

参数解释:

实例ID。标识实例的唯一标识。

取值范围:

只能由英文字母、数字组成,且长度为32个字符。

name

String

参数解释:

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

取值范围:

4~64个字符之间,必须以字母开头,不区分大小写,可以包含字母、数字、中划线或者下划线,不能包含其他的特殊字符。

status

String

参数解释:

实例状态。如BUILD,表示创建中。

取值范围:

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

datastore

Object

参数解释:

数据库信息。详情请参见表10

ha

Object

参数解释:

数据库部署形态。

详情请参见表11

replica_num

Integer

参数解释:

实例副本数。

取值范围:

不涉及。

port

String

参数解释:

数据库端口信息,与请求参数相同。

取值范围:

不涉及。

backup_strategy

Object

参数解释:

自动备份策略。

详情请参见表12

enterprise_project_id

String

参数解释:

项目标签。

取值范围:

不涉及。

flavor_ref

String

参数解释:

规格码,非空。

取值范围:

不涉及。

volume

Object

参数解释:

volume信息。

详情请参见表13

region

String

参数解释:

区域ID。

取值范围:

不涉及。

availability_zone

String

参数解释:

可用区ID。

取值范围:

不涉及。

vpc_id

String

参数解释:

虚拟私有云ID。

取值范围:

不涉及。

subnet_id

String

参数解释:

子网的网络ID信息。

取值范围:

不涉及。

security_group_id

String

参数解释:

实例所属的安全组。

取值范围:

不涉及。

charge_info

Object

参数解释:

付费方式信息,仅支持按需。

详情请参见表14

表10 datastore字段数据结构说明

名称

参数类型

说明

type

String

参数解释:

数据库引擎。

取值范围:

GaussDB

version

String

参数解释:

数据库版本。

取值范围:

不涉及。

表11 ha字段数据结构说明

名称

参数类型

说明

mode

String

参数解释:

GaussDB为分布式模式,取值:enterprise(企业版) ,不区分大小写。

取值范围:

不涉及。

replication_mode

String

参数解释:

备机同步参数。

取值范围:

“sync”

说明:
  • “sync”为同步模式。

consistency

String

参数解释:

GaussDB的预留参数:指定事务一致性类型。

取值范围:

strong(强一致性) | eventual(最终一致性)。

表12 backup_strategy字段数据结构说明

名称

参数类型

说明

start_time

String

参数解释:

备份时间段。自动备份将在该时间段内触发。

格式必须为hh:mm-HH:MM且有效,当前时间指UTC时间。

  • HH取值必须比hh大1。
  • mm和MM取值必须相同,且取值必须为00、15、30或45。

取值示例:

  • 08:15-09:15
  • 23:00-00:00

如果请求体中不填写“backup_strategy”字段,则响应体中 “start_time”默认返回“02:00-03:00”

取值范围:

不涉及。

keep_days

Integer

参数解释:

指定已生成备份文件的可保存天数。

如果请求体中不填写“backup_strategy”字段,则响应体中 “keep_days”默认返回“7”

取值范围:

[1, 732]

表13 volume字段数据结构说明

名称

参数类型

说明

type

String

参数解释:

磁盘类型。

取值范围:

ULTRAHIGH,表示SSD盘。

size

Integer

参数解释:

磁盘大小。

取值范围:

GaussDB分布式实例创建时需指定大小:要求必须为(分片数*4GB)的倍数,取值范围:(分片数*40GB)~(分片数*16TB)。

表14 chargeInfo字段数据结构说明

名称

参数类型

说明

charge_mode

String

参数解释:

创建类型,支持按需。

取值范围:

不涉及。

请求示例

  • 创建一个GaussDB实例,实例部署形态为分布式独立部署,按需付费,引擎版本为1.4,同一可用区下,3个协调节点,3个分片,3个副本,规格为8U64G。
    https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/opengauss/v3/054b61972980d4552f0bc00ac8d3f5cd/instances
    {
        "name": "user1-v3-independent-01", 
        "datastore": {
            "type": "GaussDB", 
            "version": "1.4"
        }, 
        "flavor_ref": "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in", 
        "volume": {
            "type": "ULTRAHIGH", 
            "size": 120
        },
        "disk_encryption_id": "24ae42b5-4009-4ea2-b66a-0b211e424dab",
        "region": "aaa", 
        "availability_zone": "bbb,bbb,bbb", 
        "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329", 
        "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189", 
        "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f", 
        "backup_strategy": {
            "start_time": "17:00-18:00", 
            "keep_days": 7
        }, 
        "charge_info": {
            "charge_mode": "postPaid"
        }, 
        "password": "xxxxxx", 
        "configuration_id": "", 
        "enterprise_project_id": "", 
        "time_zone": "UTC+08:00",
        "ha":{
            "mode":"enterprise",
            "consistency":"strong",
            "replication_mode":"sync"
        },
        "sharding_num": 3,
        "coordinator_num": 3,
        "replica_num": 3,
        "port":8000,
        "enable_force_switch":true
    }
    
  • 创建一个GaussDB实例,实例部署形态为分布式独立部署,包周期付费(1年),引擎版本为1.4,三个不同可用区下,3个协调节点,3个分片,3个副本,规格为8U64G。
    https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/opengauss/v3/054b61972980d4552f0bc00ac8d3f5cd/instances
    {
        "name": "user1-v3-independent-02", 
        "datastore": {
            "type": "GaussDB", 
            "version": "1.4"
        }, 
        "flavor_ref": "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in", 
        "volume": {
            "type": "ULTRAHIGH", 
            "size": 120
        },
        "disk_encryption_id": "24ae42b5-4009-4ea2-b66a-0b211e424dab",
        "region": "aaa",
        "availability_zone": "bbb,ccc,ddd", 
        "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329", 
        "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189", 
        "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f", 
        "backup_strategy": {
            "start_time": "17:00-18:00", 
            "keep_days": 7
        }, 
        "charge_info": {
            "charge_mode": "prePaid",
            "period_type": "year",
            "period_num": 1
        },
        "password": "xxxxxx", 
        "configuration_id": "", 
        "enterprise_project_id": "", 
        "time_zone": "UTC+08:00",
        "ha":{
            "mode":"enterprise",
            "consistency":"strong",
            "replication_mode":"sync"
        },
        "sharding_num": 3,
        "coordinator_num": 3,
        "replica_num": 3,
        "port":8000,
        "enable_force_switch":true
    }
  • 创建一个GaussDB实例,实例部署形态为主备版高可用(1主2备),按需付费,引擎版本为1.4,同一可用区下,规格为8U64G。
    https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/opengauss/v3/054b61972980d4552f0bc00ac8d3f5cd/instances
    {
        "name": "user1-v3-ha-01",
        "datastore": {
            "type": "GaussDB",
            "version": "1.4"
        },
        "flavor_ref": "gaussdb.opengauss.ee.km1.2xlarge.arm8.ha",
        "volume": {
            "type": "ULTRAHIGH",
            "size": 120
        },
        "disk_encryption_id": "24ae42b5-4009-4ea2-b66a-0b211e424dab",
        "region": "aaa",
        "availability_zone": "bbb,bbb,bbb", 
        "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329",
        "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189",
        "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f",
        "backup_strategy": {
            "start_time": "17:00-18:00",
            "keep_days": 7
        },
        "charge_info": {
            "charge_mode": "postPaid",
        },
        "password": "xxxxxx",
        "configuration_id": "", 
        "enterprise_project_id": "",
        "time_zone": "UTC+08:00",
        "ha": {
            "mode": "centralization_standard",
            "consistency": "strong",
            "replication_mode": "sync"
        },
        "replica_num": 3,
        "port": 8000,
        "enable_force_switch": true
    }
  • 创建一个GaussDB实例,实例部署形态为主备版高可用(1主2备),包周期付费(1年),引擎版本为1.4,三个不同可用区下,规格为8U64G。
    https://gaussdb-opengauss.cn-north-4.myhuaweicloud.com/opengauss/v3/054b61972980d4552f0bc00ac8d3f5cd/instances
    {
        "name": "user1-v3-ha-02",
        "datastore": {
            "type": "GaussDB",
            "version": "1.4"
        },
        "flavor_ref": "gaussdb.opengauss.ee.km1.2xlarge.arm8.ha",
        "volume": {
            "type": "ULTRAHIGH",
            "size": 120
        },
        "disk_encryption_id": "24ae42b5-4009-4ea2-b66a-0b211e424dab",
        "region": "aaa",
        "availability_zone": "bbb,ccc,ddd", 
        "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329",
        "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189",
        "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f",
        "backup_strategy": {
            "start_time": "17:00-18:00",
            "keep_days": 7
        },
        "charge_info": {
            "charge_mode": "prePaid",
            "period_type": "year",
            "period_num": 1
        },
        "password": "xxxxxx",
        "configuration_id": "", 
        "enterprise_project_id": "",
        "time_zone": "UTC+08:00",
        "ha": {
            "mode": "centralization_standard",
            "consistency": "strong",
            "replication_mode": "sync"
        },
        "replica_num": 3,
        "port": 8000,
        "enable_force_switch": true
    }

响应示例

GaussDB企业版实例

{
    "instance": {
        "id": "ad8cd1440aa94a02ae4580fcbebb3143in14",
        "name": "user1-v3-independent",
        "status": "BUILD",
        "datastore": {
            "type": "GaussDB",
            "version": "1.4"
        },
        "ha": {
            "mode": "Enterprise",
            "replication_mode": "sync",
            "consistency": "strong"
        },
        "port": "8000",
        "volume": {
            "type": "ULTRAHIGH",
            "size": 120
        },
        "replica_num": 3,
        "region": "cn-north-4",
        "backup_strategy": {
            "start_time": "17:00-18:00",
            "keep_days": 7
        },
        "flavor_ref": "gaussdb.opengauss.ee.dn.m6.2xlarge.8.in",
        "availability_zone": "cn-north-4a,cn-north-4a,cn-north-4a",
        "vpc_id": "1f011c32-2de2-4aa8-a161-9498dbcef329",
        "subnet_id": "54a44bec-e36f-441e-86bb-d749ace9c189",
        "security_group_id": "c6123999-8532-421c-9db6-e078013ff58f",
        "charge_info": {
            "charge_mode": "postPaid"
        }
    },
    "job_id": "30f2790a-a5b6-4a13-a5ab-733c746609af"
}

状态码

错误码

请参见错误码

相关文档