---
title: "创建租户 - OceanBase 数据库 V4.3.4 | OceanBase 文档中心"
description: 创建租户 本文介绍如何通过 API 创建租户。 调用说明 接口约束 obshell Server 会对该 API 进行安全校验，详细介绍可参见 API 混合加密 。 请求路径 POST /api/v1/tenant 请求参数 参数 类型 必选 示例值 描述 name string 是 t1 设置待创建的租户名称。 z…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.4

# 创建租户

更新时间：2025-08-22 14:29:19

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.4/zh-CN/700.reference/1500.Components-and-Tools/100.manage/100.obshell/400.obshell-api-reference/500.tenant-management/100.create-tenant-of-api.md)  

本文介绍如何通过 API 创建租户。

## 调用说明

### 接口约束

obshell Server 会对该 API 进行安全校验，详细介绍可参见 [API 混合加密](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001576772)。

### 请求路径

POST /api/v1/tenant

### 请求参数

| 参数 | 类型 | 必选 | 示例值 | 描述 |
| --- | --- | --- | --- | --- |
| name | string | 是 | t1 | 设置待创建的租户名称。 |
| zone_list | []ZoneParam | 是 | 详情参见下文 **ZoneParam 的数据结构** | 设置租户所使用的资源规格以及副本的分布情况。 |
| mode | string | 否 | MYSQL | 设置待创建租户的租户类型，仅支持设置为 `MYSQL`。 |
| primary_zone | string | 否 | RANDOM | 设置租户的 Primary Zone，指定租户提供读写服务的 Zone 的优先级。 |
| whitelist | string | 否 | % | 指定租户的访问白名单。 |
| root_password | string | 否 | 123456 | 设置租户的 root 用户密码。 |
| scenario | string | 否 | kv | 指定租户负载类型。可选值如下：   - `express_oltp`：适用于贸易、支付核心系统、互联网高吞吐量应用程序等工作负载。没有外键等限制、没有存储过程、没有长交易、没有大交易、没有复杂的连接、没有复杂的子查询。 - `complex_oltp`：适用于银行、保险系统等工作负载。他们通常具有复杂的联接、复杂的相关子查询、用 PL 编写的批处理作业，以及长事务和大事务。有时对短时间运行的查询使用并行执行。 - `olap`：适用于实时数据仓库分析场景。 - `htap`：适用于混合 OLAP 和 OLTP 工作负载。通常用于从活动运营数据、欺诈检测和个性化建议中获取即时见解。 - `kv`：适用于键值工作负载和类似 Hbase 的宽列工作负载，这些工作负载通常具有非常高的吞吐量并且对延迟敏感。    #### 说明    仅在 OceanBase 集群为 V4.3.0 或之后版本时，支持使用该选项设置租户负载类型。 |
| variables | map[string]interface{} | 否 | {   "max_connections": 1000,   "ob_query_timeout": 10000000   } | 设置租户的系统变量。 |
| parameters | map[string]interface{} | 否 | {   "backup_data_file_size": "2G",   "arbitration_timeout": "10s"   } | 设置租户的配置项。 |
| charset | string | 否 | 无 | 指定租户使用的字符集。 |
| collation | string | 否 | 无 | 指定租户使用的字符序。 |
| read_only | bool | 否 | false | 指定租户是否可读。 |
| comment | string | 否 | 无 | 指定租户的信息。 |
| import_script | bool | 否 | false | 控制是否将时区数据和 GIS meta 数据导入到系统租户，默认为 `false`。   #### 说明    自 obshell V4.2.4.2 起支持配置该参数。 |

ZoneParam 的数据结构：

| 参数 | 类型 | 必选 | 示例值 | 描述 |
| --- | --- | --- | --- | --- |
| name | string | 是 | zone1 | 设置 Zone 的名称 |
| replica_type | string | 否 | FULL | 设置租户在 Zone 上的副本类型，可设置为 `FULL`（全功能型副本）或 `READONLY`（只读型副本），默认为 `FULL`。 |
| unit_config_name | string | 是 | s1 | 设置租户资源池在 Zone 上使用的资源规格。 |
| unit_num | int | 是 | 1 | 设置租户在 Zone 上的 unit 个数。 |

### 返回结果

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| successful | bool | 请求是否成功。 |
| timestamp | time.Time | 服务端完成请求的时间戳。 |
| duration | int | 服务端处理请求的时间（毫秒）。 |
| status | int | 符合 HTTP Status 规范的编码。 |
| traceId | string | 请求的 Trace ID。 |
| data | DagDetailDTO | 异步任务信息，详情参见下文 **DagDetailDTO 信息的数据结构**。 |
| error | ApiError | 请求产生的 Error，包含如下信息：   - `code`：错误码。 - `message`：错误详细信息。 - `subErrors`：子错误信息。 |

DagDetailDTO 信息的数据结构如下：

| 参数 | 类型 | 说明 |
| --- | --- | --- |
| id | string | DAG 通用 ID。 |
| dag_id | int | DAG id，是记录在 OceanBase 数据库中的主键。 |
| name | string | DAG 名称。 |
| stage | int | DAG 的当前执行阶段。 |
| max_stage | int | DAG 执行过程中的总阶段数。 |
| state | string | DAG 执行状态。 |
| operator | string | DAG 执行操作类型。 |
| start_time | time.Time | DAG 执行起始时间。 |
| end_time | time.Time | DAG 执行结束时间。 |
| additional_data | map[string]any | DAG 其他数据。 |
| nodes | []NodeDetailDTO | DAG 内的所有 Node 信息，详见 [获取 Node 的详细信息](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001577432)。 |

## 示例

### 请求示例

POST 10.10.10.1:2886/api/v1/tenant

```json
{
    "name": "t1",
    "zone_list": [
        {
            "name": "zone1",
            "unit_config_name": "s1",
            "unit_num": 1
        },
        {
            "name": "zone2",
            "unit_config_name": "s1",
            "unit_num": 1
        },
        {
            "name": "zone3",
            "unit_config_name": "s1",
            "unit_num": 1
        }
    ],
    "mode": "MYSQL",
    "read_only": false
}

```

### 返回示例

```json
{
    "successful": true,
    "timestamp": "2024-10-12T17:35:23.85443063+08:00",
    "duration": 64,
    "status": 200,
    "traceId": "42ee97601d3de292",
    "data": {
        "id": "18",
        "dag_id": 8,
        "name": "Create tenant t1",
        "stage": 1,
        "max_stage": 3,
        "state": "READY",
        "operator": "RUN",
        "start_time": "0001-01-01T00:00:00Z",
        "end_time": "0001-01-01T00:00:00Z",
        "additional_data": null,
        "nodes": null
    }
}

```

## 相关文档

除通过命令行调用 API 接口外，还可以通过 SDK 方法调用 API。

- 通过 obshell-sdk-python 请求 API 方法的介绍可参见 [创建租户](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001578557)。
 - 通过 obshell-sdk-go 请求 API 方法的介绍可参见 [创建租户](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000001578621)。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
