欢迎访问 OceanBase 官网获取更多信息:https://www.oceanbase.com/
功能说明
在指定的集群下创建单个租户时使用的接口。
调用说明
接口约束
调用者需要通过 OCP 应用服务鉴权。
请求路径
POST /api/v2/ob/clusters/{id}/tenants/createTenant
path:
参数 | 类型 | 必选 | 示例值 | 描述 |
|---|---|---|---|---|
id | Integer | 是 | 1 | 集群 ID |
请求参数
参数 | 类型 | 必选 | 示例值 | 描述 |
|---|---|---|---|---|
name | String | 是 | foo | 租户名称,集群下唯一 |
mode | String | 否 | MYSQL | 租户兼容模式,取值范围: ORACLE MYSQL |
primaryZone | String | 否 | zone1,zone2;zone3 | Zone 优先级 |
charset | String | 否 | utf8mb4 | 字符集,取值范围:
缺省为 utf8mb4 |
collation | String | 否 | utf8mb4_general_ci | 校验规则,取值范围:
缺省为 utf8mb4_general_ci 说明 |
description | String | 否 | bar | 租户备注信息 |
whitelist | String | 否 | % | 支持的格式有: IP地址,示例:xxx.xxx.xxx.1,xxx.xxx.xxx.2 子网/掩码,示例:xxx.xxx.xxx.3/24 模糊匹配,示例:xxx.xxx.xxx.% 或 xxx.xxx.xxx._ 多种格式混合,示例:xxx.xxx.xxx.1,xxx.xxx.xxx.2,xxx.xxx.xxx.%,xxx.xxx.xxx._,xxx.xxx.xxx.3/24 说明 |
rootPassword | String | 是 | 管理员用户密码。 ORACLE 租户:SYS 用户 MYSQL 租户:root 用户 密码强度说明: 长度为 8 ~ 32,且至少包含 2 个数字、2 个大写字母、2 个小写字母和 2 个特殊字符,支持的特殊字符为 ._+@#$% | |
saveToCredential | Boolean | 否 | true | 是否将租户管理员密码保存到到当前 ocp 登录用户的密码箱中。 |
zones | Array | 是 | -- | -- |
├─name | String | 是 | zone1 | 集群下的 Zone 名 |
├─replicaType | String | 是 | FULL | 取值范围: FULL LOGONLY READONLY |
├─resourcePool | Object | 是 | 资源池 | |
├─unitSpecName | String | 是 | S1 | 可在 “Unit 规格管理” 页面上查看规格列表 |
├─unitCount | Integer | 是 | 1 | Unit 个数 |
返回结果
基础数据结构
参数 | 类型 | 说明 |
|---|---|---|
data | Object | 异步任务信息,详情参见 任务信息。 |
successful | Boolean | 请求是否成功。 |
timestamp | Datetime | 服务端完成请求的时间戳。 |
duration | Integer | 服务端处理请求的时间(毫秒)。 |
status | Integer | 符合 HTTP Status 规范的编码。 |
traceId | String | 请求的 Trace ID,用于排查问题。 |
server | String | 响应请求的应用服务的地址。 |
租户数据结构
参数 | 类型 | 说明 |
|---|---|---|
id | Long | 租户 ID |
name | String | 租户名 |
clusterName | String | 集群名 |
obClusterId | Long | 集群在 OB 端的 ID |
clusterId | Long | 集群 ID |
clusterType | String | 集群类型,取值范围: PRIMARY:主集群 STANDBY:备集群 |
mode | String | 租户兼容模式,取值范围: ORACLE MYSQL |
createTime | DateTime | 创建时间 |
primaryZone | String | Zone 优先级 |
zoneList | String | Zone 列表 |
locality | String | 副本分布 |
status | String | 租户状态 |
locked | Boolean | 是否已锁定 |
readonly | String | 是否只读 |
obVersion | String | OceanBase 集群版本 |
description | String | 租户备注 |
示例
请求示例
POST /api/v2/ob/clusters/1/tenants/createTenant
body:
{
"name": "foo",
"mode": "MYSQL",
"primaryZone": "zone1,zone2;zone2",
"charset": "utf8mb4",
"collation": "utf8mb4_general_ci",
"description": "bar",
"whitelist": "%",
"rootPassword": "xxxxx",
"saveToCredential": true,
"zones": [
{
"name": "zone1",
"replicaType": "FULL",
"resourcePool": {
"unitSpecName": "S1",
"unitCount": 1
}
},
{
"name": "zone2",
"replicaType": "FULL",
"resourcePool": {
"unitSpecName": "S1",
"unitCount": 1
}
},
{
"name": "zone3",
"replicaType": "FULL",
"resourcePool": {
"unitSpecName": "S1",
"unitCount": 1
}
}
]
}
返回示例
{
"data": {
"clusterId": 2000017,
"creator": "admin",
"executor": "xxx.xxx.xxx.xxx",
"id": 4000191,
"name": "Create tenant",
"operation": "EXECUTE",
"prohibitRollback": false,
"startTime": "2022-08-22T19:55:25.902+08:00",
"status": "RUNNING",
"subtasks": [
{
"description": "Create ob tenant",
"downstreams": [
4000198
],
"id": 4000201,
"name": "Create ob tenant",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 4,
"status": "PENDING",
"timeout": 1200,
"upstreams": [
4000204
]
},
{
"description": "Set ob tenant parameters",
"downstreams": [
4000199
],
"id": 4000202,
"name": "Set ob tenant parameters",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 2,
"status": "PENDING",
"timeout": 300,
"upstreams": [
4000203
]
},
{
"description": "Set whitelist",
"downstreams": [
4000203
],
"id": 4000200,
"name": "Set whitelist",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 3,
"status": "PENDING",
"timeout": 300,
"upstreams": [
4000195
]
},
{
"description": "Update tenant status",
"downstreams": [
4000197
],
"id": 4000199,
"name": "Update tenant status",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 8,
"status": "PENDING",
"timeout": 300,
"upstreams": [
4000202
]
},
{
"description": "Set super user password",
"downstreams": [
4000200
],
"id": 4000195,
"name": "Set super user password",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 0,
"status": "PENDING",
"timeout": 300,
"upstreams": [
4000198
]
},
{
"description": "Sync tenant information",
"downstreams": [
4000195
],
"id": 4000198,
"name": "Sync tenant information",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 5,
"status": "PENDING",
"timeout": 300,
"upstreams": [
4000201
]
},
{
"description": "Prepare create tenant",
"downstreams": [
4000201
],
"id": 4000204,
"name": "Prepare create tenant",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 6,
"status": "READY",
"timeout": 30,
"upstreams": []
},
{
"description": "Import tenant time zone info",
"downstreams": [],
"id": 4000196,
"name": "Import tenant time zone info",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 1,
"status": "PENDING",
"timeout": 600,
"upstreams": [
4000197
]
},
{
"description": "Import tenant srs info",
"downstreams": [
4000196
],
"id": 4000197,
"name": "Import tenant srs info",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 9,
"status": "PENDING",
"timeout": 600,
"upstreams": [
4000199
]
},
{
"description": "Set system variables",
"downstreams": [
4000202
],
"id": 4000203,
"name": "Set system variables",
"nodeType": "JAVA_TASK",
"operation": "EXECUTE",
"parallelIdx": -1,
"prohibitRollback": false,
"runTime": 1,
"seriesId": 7,
"status": "PENDING",
"timeout": 300,
"upstreams": [
4000200
]
}
],
"taskDefinitionId": -1,
"tenantId": 3000001,
"type": "MANUAL"
},
"duration": 6390,
"server": "a83ad33525",
"status": 200,
"successful": true,
"timestamp": "2022-08-22T19:55:27.325+08:00",
"traceId": "dadeade2e6894d46"
}
欢迎访问 OceanBase 官网获取更多信息:https://www.oceanbase.com/




