---
title: "管理服务名 - 云平台 OCP V4.3.3 | OceanBase 文档中心"
description: 管理服务名 本节为您介绍服务名的相关信息，包括背景介绍、版本限制及功能的使用场景和方法。 背景介绍 OCP V4.2.0 开始支持租户级主备，但由于 OBProxy、OceanBase 的限制，用户在 OCP 上执行主备租户日常切换、容灾切换后，必须修改应用的数据库连接串，此时会无法实现类似主备集群切主后的自动路由到…
---
切换语言

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

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*lJTmRZ61jSUAAAAAAAAAAAAADiGDAQ/original) 云平台 OCPV 4.3.3

# 管理服务名

更新时间：2026-04-14 15:16:09

[编辑](https://github.com/oceanbase/ocp-doc/edit/V4.3.3/zh-CN/700.tenant-functions/600.manage-a-tenant/800.manage-service-name.md)  

本节为您介绍服务名的相关信息，包括背景介绍、版本限制及功能的使用场景和方法。

## 背景介绍

OCP V4.2.0 开始支持租户级主备，但由于 OBProxy、OceanBase 的限制，用户在 OCP 上执行主备租户日常切换、容灾切换后，必须修改应用的数据库连接串，此时会无法实现类似主备集群切主后的自动路由到新主的能力。因此，OceanBase 设计了一种支持自动路由的方案，该方案的实现需要 OCP、OBProxy、OceanBase 三者协同工作。

OceanBase 的 SERVICE_NAME（即：服务名）定义了一个服务，通过 SQL 指令将服务名指定给某个租户，OCP 保证主备租户的服务名相同，非主备租户的服务名不同。具体主备租户如下表所示。

| 租户名 | 角色 | 所属 OceanBase 集群 | Service Name |
| --- | --- | --- | --- |
| TenantA | PRIMARY | ClusterA | ServiceTest |
| TenantB | STANDBY | ClusterB | ServiceTest |

下图为业务应用通过服务名访问租户的示意图:

![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141354.png)

OceanBase 提供了为某个租户创建、启动、停止、删除服务名四个操作，对应四条 SQL，其中创建服务名后自动 START，租户的服务名启动成功后，才能通过服务名建立 Session；删除服务名需要先停止。

#### 注意

OceanBase 并没有 “一个服务名必须指定给同一套主备租户” 的限制，即 OceanBase 可以将服务名指定给任意一个租户，上述限制需要 OCP 来做。

## 版本限制

OCP、OceanBase、OBProxy 需同时满足如下版本要求：

- OCP：[V4.3.1, +∞)。
 - OceanBase：V4.2.1.9、[V4.2.4.0, V4.3.0.0)、[V4.3.3.0, +∞)。
 - OBProxy：[V4.3.1.0, +∞)。

## 功能使用

### 自动路由

实现自动路由需要如下两个条件，缺一不可：

1. 主备租户拥有相同的服务名。
 2. 主备租户所属的 OceanBase 集群关联同一个 OBProxy 集群，该 OBProxy 集群在访问主备租户时可实现切主自动路由。

### 设置服务名

在 OCP 上为租户设置服务名后，可以通过服务名连接该租户。

```shell
obclient -hIP -PPORT -uroot@SERVICE:service1 -pPASSWORD

```

其中 SERVICE 为关键字，并根据实际服务名替换 `service1`。OCP 有 3 种方式设置租户服务名:

- **创建租户时指定**：创建租户时可直接指定服务名。

  ![2](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141356.png)
 - **租户详情页设置**：在租户详情页为租户添加服务名，并支持对已有服务名进行 **编辑** 或 **删除**。

  ![3](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141357.png)
 - **同步服务名**：OCP 每分钟会进行一次租户信息同步，将 OceanBase 内部表/视图中的租户信息与 OCP 中的元信息进行对比，并进行更新，此时租户服务名会随之更新。

### 切主场景应用

#### 日常切换

日常切换新增如下两项预检查：

1. 主备租户都未配置服务名，或配置了一致的服务名。
 2. 主备租户有服务名时，不能与其他无主备关系的租户服务名相同。

日常切换前，如果备租户所在的 OceanBase 集群没有关联主租户所在 OceanBase 集群关联的 OBProxy，OCP 会给出明确警告: 日常切换后可能无法自动路由，但不会强行禁止日常切换。日常切换不会修改租户的服务名，业务应用使用 `[用户名]@SERVICE_NAME:[serviceName]` 的方式通过 OBProxy 访问 OceanBase 租户，不需要修改连接串。

#### 容灾切换

OceanBase 在执行容灾切换时，会将新主租户的服务名删除，业务将无法通过服务名连接新主租户，因此必须修改连接串。为了实现不修改连接串，OCP 进行了功能包装，即在 OCP 上执行容灾切换前选择是否为新主租户设置服务名，此为可选操作。您可保持新主租户的服务名与原来一致，此时 Failover 后业务可不修改连接串直接访问新主租户。

#### 注意

若新主租户的服务名与原来一致，当 OBProxy 自动访问新主租户时，可能会因为新主租户 `RPO!=0` 而出现数据不一致的问题。

具体原理如下图所示。租户 B 进行容灾切换之后，原主备关系被分成了两个部分，（租户 B、租户 C）和（租户 A、租户 D、租户 E），其中租户 A、租户 C、租户 D、租户 E 的服务名仍为 ServiceA ，租户 B 的服务名被删除。为了让业务应用不修改连接串，OCP 在容灾切换流程的最后重新将租户 B 的服务名置为 ServiceA，并将租户 A、租户 D、租户 E 的服务名置为 **INVALID**。**INVALID** 状态是 OCP 的概念，作用是对 OBProxy 屏蔽该租户的服务名，避免其访问旧主，Config Server 只会返回服务名状态不为 **INVALID** 的租户。

![4](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/serviceA.png)

#### 主备解耦

对 OceanBase 来说，主备解耦和备租户 Failover 是同一条指令，但在 OCP 上是两个不同的功能入口。如下图所示的主备关系，原主租户此时处于正常状态，解耦后 OceanBase 只会自动将租户 B 的服务名删除，OCP 同时将租户 C 的服务名删除，避免不属于主备关系的租户拥有同一个服务名。

![5](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/serviceB.png)

### 多集群模式适配

当主备 OceanBase 集群分别部署在主备 OCP 集群时，主备 OCP 均可以同时返回主备 OceanBase 的 RS List 信息，此方式可以在主备 OceanBase 集群 Swithover 时不需要修改应用连接串。示意图如下:

![6](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141358.png)

主备 OceanBase 任意集群与 OBProxy 建立关联后，OBProxy 即可同时获取主备 OceanBase 的 RS List，主要取决于两个条件：

1. 主备 OceanBase 集群的集群名相同，OBProxy 请求 RS List 时使用一个集群名即可。
 2. 主备 OceanBase 集群的 proxyro@sys 密码一致，只关联其中一个，proxyro 密码可以通用。

为了支持多集群模式下做到类似主备 OceanBase 集群的能力，OCP 从 V4.3.2 开始支持跨 OCP 集群建立 OceanBase 与 OBProxy 关联的能力:

1. 支持为 OceanBase 集群关联远程 OBProxy 集群，下拉列表中展示远程 OBProxy 集群。

   ![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141504.png)
 2. 支持为 OBProxy 集群关联远程 OceanBase 集群，下拉列表中展示远程 OceanBase 集群。

   ![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141506.png)
 3. 创建 OceanBase 集群时同时关联 OBProxy 集群，下拉列表展示远程 OBProxy 集群。

   ![1](https://obbusiness-private.oss-cn-shanghai.aliyuncs.com/doc/img/ocp/433/202411141508.png)

本地 OBProxy 集群与远程 OceanBase 集群建立关联后，可通过本地 OBProxy 访问远程 OceanBase 集群上的租户。

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