---
title: OBServer 停止错误，错误代码 4179-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于OBServer 停止错误，错误代码 4179相关的常见问题和使用技巧，帮助您快速解决OBServer 停止错误，错误代码 4179的难题。
---
切换语言

- 简体中文
- English

划线反馈

# OBServer 停止错误，错误代码 4179

更新时间：2026-06-04 01:56

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x 内容类型：Troubleshoot  

本文介绍执行 STOP SERVER 命令停止 OBServer 报 4179 错误时，如何进行问题排查并解决问题。

## 影响版本

OceanBase 数据库所有版本

## 问题现象

执行 `STOP SERVER` 命令停止 OBServer 错误，提示 `Operation not allowed now`，错误信息如下。

```sql
obclient> ALTER SYSTEM STOP SERVER "IP:2882";
ERROR 4179 (HY000): Operation not allowed now

```

## 可能原因

根据错误信息，判断错误的原因可能是当前集群不满足停止 OBServer 的条件。

要停止 OBServer，需要满足以下条件：

- 不能跨 Zone 执行 `STOP SERVER` 操作，仅支持停止位于相同 Zone 中的 OBServer 。
 - 只有一个 `STOP SERVER` 操作结束，才能发起另一个 `STOP SERVER` 操作。
 - 读写 Server 的数量需要能够作为多数派。

  例如，对于一个 1-1-1 集群，如果已经有一台 OBServer 停止，在剩余的两台 OBServer 上执行 `STOP SERVER` 操作一定会失败。
 - 配置项 `enable_auto_leader_switch` 必须为 True。
 - 执行 `STOP SERVER` 会检查 CLOG 是否同步，如果 CLOG 不同步，则不允许执行 `STOP SERVER`。
 - 执行 `STOP SERVER` 操作的 OBServer 上，租户的 Locality 设置应包含不少于两个 Zone，并且其中一个应当为副本 leader 所在的 Zone。

  #### 说明

  停止 OBServer 会停止该服务端对客户端提供的服务。停止后，客户端连接不会路由到停止的服务端。因此，要成功停止 OBServer，就是要将服务端上的所有副本 leader 切换到其他节点，并确保切换成功。

## 解决方法

按照原因中列举的注意事项逐一排查。

1. 登录 OCP 云平台。
 2. 在左侧导航栏单击 **集群** ，在 **Zone 列表** 页签执行以下检查。

   ![Zone 列表 ](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/4889158061/p203229.png)

      - 检查执行 `STOP SERVER` 的节点是否与要停止的节点位于相同的 Zone。
      - 检查是否有状态为 **停止中** 的 OBServer。
      - 检查状态为 **运行中** 的 OBServer 数量是否满足多数派。
 3. 在左侧导航栏单击 **租户管理** ，检查各租户的 Locality。

   ![检查 Locality](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/4463451161/p203236.png)
 4. 单击左侧导航栏的 **参数管理** ，检查配置项 `enable_auto_leader_switch` 是否为 True。

   `enable_auto_leader_switch` 用于设置是否开启数据副本自动切主，默认为 True，表示允许副本自动切主。如果要停止的 OBServer 是副本 Leader，且 `enable_auto_leader_switch` 为 False，则停止该 OBServer 会导致副本无主。

   有关该配置项的详细信息，请参见《OceanBase 数据库 参考指南》中的 **系统配置项** 章节。

   ![检查自动切主参数](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/4463451161/p203270.png)
 5. 检查 CLOG 是否同步。

   如果以下 SQL 执行结果为空，则表示 CLOG 已同步。

   ```unknow
   obclient> SELECT svr_ip, svr_port, table_id, partition_idx FROM __all_virtual_clog_stat WHERE is_in_sync= 0 AND is_offline = 0 AND replica_type != 16;

   ```

Previous

[OceanBase 数据库中 STOP SERVER 的语义](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000000121)

Next

[如何配置 OceanBase 数据库通过心跳检查来标记 OBServer 永久下线](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000000090) ![有帮助](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) 咨询热线
