---
title: "租户锁定和解锁 - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: 租户锁定和解锁 OceanBase 数据库支持对租户进行锁定。租户锁定后，不能在该租户上创建新的连接，已有连接保持不变。本文介绍如何进行租户锁定和解锁。 背景信息 通过 ALTER TENANT 语句对租户锁定和解锁。适用于故障应急场景和运维变更场景： 故障应急：租户出现异常正在修复中，为了避免业务流量对修复进程产生…
---
切换语言

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

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

# 租户锁定和解锁

更新时间：2026-03-28 16:24:28

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/600.manage/200.tenant-management/600.common-tenant-operations/1100.tenant-locking-and-unlocking.md)  

OceanBase 数据库支持对租户进行锁定。租户锁定后，不能在该租户上创建新的连接，已有连接保持不变。本文介绍如何进行租户锁定和解锁。

## 背景信息

通过 `ALTER TENANT` 语句对租户锁定和解锁。适用于故障应急场景和运维变更场景：

- 故障应急：租户出现异常正在修复中，为了避免业务流量对修复进程产生影响，可以锁定租户。需要在征得业务方同意的情况下进行操作。应急场景下锁定租户，锁定后需要主动 kill session。
 - 运维变更：例如租户需要下线，下线流程需要保证可灰度、可回滚等原则，可以把锁定租户作为流程之一以观察对业务系统的影响。

#### 注意

锁定和解锁务必配对使用，忘记解锁会导致无法建立新连接。

## 租户锁定

1. 使用 `root` 用户登录到集群的 `sys` 租户。

   ```shell
   obclient -h172.30.xx.xx -P2883 -uroot@sys#cluster -p**** -A

   ```
 2. 进入 `oceanbase` 数据库。

   ```sql
   USE oceanbase;

   ```
 3. 通过 `DBA_OB_TENANTS` 视图，查看租户信息。

   以查看租户 `mq_t1` 的锁定状态为例：

   ```shell
   obclient [oceanbase]> SELECT TENANT_ID,TENANT_NAME,LOCKED FROM oceanbase.DBA_OB_TENANTS WHERE TENANT_NAME = 'mq_t1';
   +-----------+-------------+--------+
   | TENANT_ID | TENANT_NAME | LOCKED |
   +-----------+-------------+--------+
   |      1036 | mq_t1       | NO     |
   +-----------+-------------+--------+
   1 row in set

   ```

   `DBA_OB_TENANTS` 视图的详细说明，参见 [DBA_OB_TENANTS](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004477525)。
 4. 通过 `ALTER TENANT` 语句，锁定租户。

   以锁定租户 `mq_t1` 为例。

   ```shell
   obclient [oceanbase]> ALTER TENANT mq_t1 LOCK;
   Query OK, 0 rows affected

   ```

   `ALTER TENANT` 语句的详细说明，参见 [ALTER TENANT](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004476914)。
 5. 查看 `DBA_OB_TENANTS` 视图，确认租户是否锁定成功。

   ```shell
   obclient [oceanbase]> SELECT TENANT_ID,TENANT_NAME,LOCKED FROM DBA_OB_TENANTS WHERE TENANT_NAME = 'mq_t1';
   +-----------+-------------+--------+
   | TENANT_ID | TENANT_NAME | LOCKED |
   +-----------+-------------+--------+
   |      1036 | mq_t1       | YES    |
   +-----------+-------------+--------+
   1 row in set

   ```

## 租户解锁

1. 使用 root 用户登录到集群的 sys 租户。

   ```shell
   obclient [(none)]> USE oceanbase;

   ```

   `DBA_OB_TENANTS` 视图的详细说明，参见 [DBA_OB_TENANTS](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004477525)。
 4. 通过 `ALTER TENANT` 语句，解锁租户。

   以解锁租户 `mq_t1` 为例：

   ```shell
   obclient [oceanbase]> ALTER TENANT mq_t1 UNLOCK;
   Query OK, 0 rows affected

   ```

   ```

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