---
title: "租户类型 | OceanBase 文档中心"
description: 租户类型 OceanBase 数据库 V4.0 开始，有三种类型的租户：系统租户、用户租户以及每个用户租户对应的 Meta 租户。 在 4.x 以前的版本中，只有系统租户和用户租户，存在本该属于用户租户的数据存放到了系统租户的问题，导致系统租户比较臃肿，引发系统租户资源占用过多、资源统计粒度粗、资源隔离不足等问题，对…
---
切换语言

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

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

# 租户类型

更新时间：2025-06-30 12:21:01

[编辑](https://github.com/oceanbase/oceanbase-database-standalone/edit/V4.2.5/zh-CN/600.manage/200.tenant-management/300.tenant-type.md)  

OceanBase 数据库 V4.0 开始，有三种类型的租户：系统租户、用户租户以及每个用户租户对应的 Meta 租户。

在 4.x 以前的版本中，只有系统租户和用户租户，存在本该属于用户租户的数据存放到了系统租户的问题，导致系统租户比较臃肿，引发系统租户资源占用过多、资源统计粒度粗、资源隔离不足等问题，对集群稳定性造成了较大挑战。OceanBase 数据库 V4.0 开始引入了 Meta 租户，为每个用户租户配置一个对应的 Meta 租户来管理用户租户的私有数据，并使用用户租户的资源。

Root Service 承担了 OceanBase 数据库的大量管理工作，包括集群管理，租户管理，资源管理，负载均衡，每日合并调度，迁移复制等，Root Service 基于系统租户支持以上功能。系统租户是 OceanBase 数据库内部用来处理集群公共任务的数据库实例。

## 租户类型介绍

- 系统租户

  系统租户是集群默认创建的租户，与集群生命期一致，负责管理集群和所有租户的生命周期。系统租户仅有一个 1 号日志流，只支持单点写入，不具备扩展能力。系统租户可以创建用户表，所有的用户表和系统表数据均由 1 号日志流服务。系统租户数据是集群私有的，不支持物理备份恢复。

  系统租户是应用系统访问 OceanBase 数据库的入口，客户端解析应用系统配置文件后访问 Config Server 获取系统租户的 IP 列表，然后访问系统租户逐级获取元数据，并最终建立与目标租户的连接。系统租户的容量是稳定性的一大挑战，大量应用系统同时重启时会产生建立连接的流量尖峰，短时间耗尽系统租户的工作线程，导致应用系统与目标租户建立连接失败。系统租户不具备横向扩展能力，可以对系统租户垂直扩容，或者调整集群配置项。

  系统租户的稳定性对 OceanBase 集群的稳定性至关重要，如果内核 Bug 导致系统租户异常后将会直接导致 OceanBase 集群的服务不可用，也会导致客户端无法建立连接、及集群内部的管理工作异常。

  #### 注意

  系统租户定位于集群管理和租户管理，不提供完整的数据库功能，不推荐在生产或业务测试等场合使用。
 - 用户租户

  与系统租户对应的是用户租户，用户租户是由用户创建的租户，对外提供完整的数据库功能，支持 MySQL 和 Oracle 两种兼容模式。用户租户支持动态扩容和缩容。用户租户的数据有更强的数据保护和可用性要求，支持跨集群物理同步和物理备份恢复，典型数据包括：schema 数据、用户表数据、事务数据等。

  关于用户租户的更多信息，参见 [用户租户](https://www.oceanbase.com/docs/common-oceanbase-database-standalone-1000000002701783)。
 - Meta 租户

  Meta 租户是 OceanBase 数据库内部自管理的租户，每创建一个用户租户会创建一个对应的 Meta 租户，其生命周期与用户租户保持一致。Meta 租户用于存储和管理用户租户的租户私有数据，这部分数据不需要跨库物理同步以及物理备份恢复，例如：配置项、位置信息、副本信息、日志流状态、备份恢复相关信息、合并信息等。 Meta 租户不可登录，普通用户只能通过系统租户的视图查询 Meta 租户下的数据。Meta 租户没有独立的 Unit，创建租户时默认为 Meta 租户预留资源，各项资源从用户租户资源中扣除。

用户租户与 Meta 租户是相关的概念，可以简单理解为：用户租户存放的都是与用户数据相关的信息，包括用户创建的表和部分系统表，这部分数据需要在主备集群之间同步，物理备份恢复也需要操作这部分数据；而 Meta 租户存放的都是支撑用户租户运行的租户私有数据，主备集群会各自创建自己的 Meta 租户，物理备份数据恢复出来的租户也会有自己的 Meta 租户，所以这部分数据不需要在主备集群之间同步，也不需要备份。系统租户与 Meta 租户类似，存放的是支撑集群运行的集群私有数据，同样无需主备集群之间同步及物理备份。

![tenant](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/observer/standalone/tenant-login.jpeg)

如上图所示：

- 租户是 OceanBase 数据库中的一个实例，独占一定的物理资源，类似于云环境下的 Docker。
 - 系统租户是集群默认创建的租户，与集群生命周期一致，负责管理集群和所有的用户租户。
 - 用户租户由用户创建，用户租户与 Meta 租户一一对应，具有相同的生命周期。
 - 私有数据表示支撑集群和用户租户运行的数据，每个集群和租户都会有自己的数据，这部分数据不需要在主备集群之间同步，也不需要物理备份。
 - 非私有数据表示用户数据，包括用户创建的表和部分系统表，需要在主备集群之间同步及物理备份。
 - 系统租户和 Meta 租户仅有一个 1 号日志流。

## 租户信息查询

登录系统租户，查询 `DBA_OB_TENANTS` 视图即可查看所有的租户。`TENANT_TYPE` 表示租户类型：`SYS` 为系统租户，`META` 为 Meta 租户，`USER` 为用户租户。租户 ID 为 1 的是系统租户。租户 ID 大于 1000 的租户中，偶数的是用户租户，奇数的是 Meta 租户，并且用户租户的租户 ID 比其对应 Meta 租户大 1。

示例如下：

```shell
obclient [oceanbase]>  SELECT * FROM DBA_OB_TENANTS;
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+---------------+-------------------+--------------------+--------+---------------+--------+-------------+-------------------+------------------+---------------------+---------------------+---------------------+---------------------+--------------+----------------------------+
| TENANT_ID | TENANT_NAME | TENANT_TYPE | CREATE_TIME                | MODIFY_TIME                | PRIMARY_ZONE | LOCALITY      | PREVIOUS_LOCALITY | COMPATIBILITY_MODE | STATUS | IN_RECYCLEBIN | LOCKED | TENANT_ROLE | SWITCHOVER_STATUS | SWITCHOVER_EPOCH | SYNC_SCN            | REPLAYABLE_SCN      | READABLE_SCN        | RECOVERY_UNTIL_SCN  | LOG_MODE     | ARBITRATION_SERVICE_STATUS |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+---------------+-------------------+--------------------+--------+---------------+--------+-------------+-------------------+------------------+---------------------+---------------------+---------------------+---------------------+--------------+----------------------------+
|         1 | sys         | SYS         | 2023-05-17 18:10:19.940353 | 2023-05-17 18:10:19.940353 | RANDOM       | FULL{1}@zone1 | NULL              | MYSQL              | NORMAL | NO            | NO     | PRIMARY     | NORMAL            |                0 |                NULL |                NULL |                NULL |                NULL | NOARCHIVELOG | DISABLED                   |
|      1001 | META$1002   | META        | 2023-05-17 18:15:21.455549 | 2023-05-17 18:15:36.639479 | zone1        | FULL{1}@zone1 | NULL              | MYSQL              | NORMAL | NO            | NO     | PRIMARY     | NORMAL            |                0 |                NULL |                NULL |                NULL |                NULL | NOARCHIVELOG | DISABLED                   |
|      1002 | mysql001    | USER        | 2023-05-17 18:15:21.461276 | 2023-05-17 18:15:36.669988 | zone1        | FULL{1}@zone1 | NULL              | MYSQL              | NORMAL | NO            | NO     | PRIMARY     | NORMAL            |                0 | 1684395321137516636 | 1684395321137516636 | 1684395321052204807 | 4611686018427387903 | NOARCHIVELOG | DISABLED                   |
|      1003 | META$1004   | META        | 2023-05-17 18:18:19.927859 | 2023-05-17 18:18:36.443233 | zone1        | FULL{1}@zone1 | NULL              | MYSQL              | NORMAL | NO            | NO     | PRIMARY     | NORMAL            |                0 |                NULL |                NULL |                NULL |                NULL | NOARCHIVELOG | DISABLED                   |
|      1004 | oracle001   | USER        | 2023-05-17 18:18:19.928914 | 2023-05-17 18:18:36.471606 | zone1        | FULL{1}@zone1 | NULL              | ORACLE             | NORMAL | NO            | NO     | PRIMARY     | NORMAL            |                0 | 1684395321137558760 | 1684395321137558760 | 1684395320951813345 | 4611686018427387903 | NOARCHIVELOG | DISABLED                   |
+-----------+-------------+-------------+----------------------------+----------------------------+--------------+---------------+-------------------+--------------------+--------+---------------+--------+-------------+-------------------+------------------+---------------------+---------------------+---------------------+---------------------+--------------+----------------------------+
5 rows in set

```

## 租户类型的区别

从用户视角，三种租户的关键特性的异同点如下：

| 对比项 | 系统租户 | 用户租户 | Meta 租户 |
| --- | --- | --- | --- |
| 租户 ID（TENANT_ID） | 1 | 最小值：1002 | 最小值：1001   与用户租户 ID 关系：Meta 租户 ID + 1 = 用户租户 ID |
| 租户类型（TENANT_TYPE） | SYS | USER | META |
| 租户名规范 | SYS | 大小写英文字母、数字和下划线 | `META${user_tenant_id}`,例如：用户租户的租户 ID 为1002，Meta 租户名为：META$1002 |
| 数据属性 | 集群私有数据 | 租户非私有数据 | 租户私有数据 |
| 扩展性 | 数据不可水平扩展，只有一个日志流 | 具备水平扩展能力，支持动态扩容和缩容 | 数据不可水平扩展，只有一个日志流 |
| 租户运维 | - 创建：不支持 - 删除：不支持 - 重命名：不支持 - 用户登录：支持 | - 创建：支持 - 删除：支持 - 重命名：支持 - 用户登录：支持 | - 创建：不支持 - 删除：不支持 - 重命名：不支持 - 用户登录：不支持 |
| 数据对外访问接口 | 系统租户下的视图。 | - 系统租户下：      - `CDB_xxx` 视图和动态性能视图会展示所有用户租户的数据。     - `DBA_OB_TENANTS` 视图会展示所有用户租户的信息。 - 用户租户下：展示本租户的数据。 | Meta 租户不能直接登录，它的信息可以通过用户租户和系统租户进行访问。   - 系统租户下：      - `CDB_xxx` 视图和动态性能视图会展示所有 -Meta 租户的数据。     - `DBA_OB_TENANTS` 视图会展示所有 Meta 租户的信息。 - 用户租户下：Meta 租户管理的数据会通过用户租户下的视图展示出来，例如路由信息 `DBA_OB_LS_LOCATIONS`、配置项信息 `GV$OB_PARAMETERS` 等。 |

 上一篇 下一篇 ![有帮助](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) 咨询热线
