---
title: "修改集群参数 | OceanBase 文档中心"
description: "修改集群参数 您可以通过 SQL 语句、OCP 或者 OBD 修改集群参数。 通过 SQL 语句修改集群参数 集群参数即集群级配置项，修改集群级配置项的语法如下所示，同时修改多个集群级配置项时，需要使用英文逗号（,）分隔。 ALTER SYSTEM [SET] parameter_name = expression …"
---
切换语言

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

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

# 修改集群参数

更新时间：2026-01-27 11:21:00

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V3.1.5/zh-CN/100.users-guide/600.basic-database-management/100.manage-clusters/300.manage-cluster-parameters/300.modify-cluster-parameters.md)  

您可以通过 SQL 语句、OCP 或者 OBD 修改集群参数。

## 通过 SQL 语句修改集群参数

集群参数即集群级配置项，修改集群级配置项的语法如下所示，同时修改多个集群级配置项时，需要使用英文逗号（,）分隔。

```sql
 ALTER SYSTEM [SET]
       parameter_name = expression [SCOPE = {MEMORY | SPFILE | BOTH}]
          [COMMENT [=] 'text']
            [SERVER [=] 'ip:port' | ZONE [=] 'zone'];

```

语句说明：

- 仅 `sys` 租户可以修改集群级配置项，普通租户无法修改集群级配置项。
 - `expression` 用于指定修改后该配置项的值。
 - `SCOPE` 用于指定本次配置项修改的生效范围，默认值为 `BOTH`。其中：

     - `MEMORY`：表示仅修改内存中的配置项，修改立即生效，且本修改在 Server 重启以后会失效（当前暂无配置项支持这种方式）。
     - `SPFILE`：表示仅修改配置表中的配置项值，当 Server 重启以后才生效。
     - `BOTH`：表示既修改配置表，又修改内存值，修改后立即生效，且 Server 重启以后配置值仍然生效。
 - `SERVER` 表示指定集群中要修改的 Server，`ZONE` 表示指定集群中要修改的 Zone。

  `ALTER SYSTEM` 语句不能同时指定 Zone 和 Server。并且在指定 Zone 时，仅支持指定一个 Zone；指定 Server 时，仅支持指定一个 Server。

  如果修改集群级配置项时，不指定 Zone 也不指定 Server，则表示该修改在整个集群内生效。
 - 集群级别的配置项不能通过普通租户设置，也不可以通过系统租户（即 `sys` 租户） 指定为普通租户设置。例如，执行 `ALTER SYSTEM SET memory_limit='100G' TENANT='test_tenant'` 语句将导致报错，因为 `memory_limit` 是集群级别的配置项。

  确认一个配置项为集群级别还是租户级别，可根据 `SHOW PARAMETERS LIKE 'parameter_name';` 语句执行结果中的 `scope` 列对应的值来判断：

     - `scope` 值为 `CLUSTER` 则表示为集群级别的配置项。
     - `scope` 值为 `TENANT` 则表示为租户级别的配置项。

示例：

```sql
obclient> ALTER SYSTEM SET net_thread_count=1 SCOPE = SPFILE;

obclient> ALTER SYSTEM SET mysql_port=8888;

obclient> ALTER SYSTEM SET mysql_port=8888 ZONE='z1';

obclient> ALTER SYSTEM SET mysql_port=8888 SERVER='xx.xx.xx.xx:2882';

```

OceanBase 数据库中各集群参数的详细说明信息请参见 [系统配置项](https://www.oceanbase.com/docs/community-observer-cn-10000000001879342) 章节。

## 通过 OCP 修改集群参数

1. 登录 OCP 。

   默认进入 **集群概览** 页面。
 2. 在 **集群列表** 区域，选择待操作的集群并单击其集群名。
 3. 在显示的页面的左侧导航栏上，单击 **参数管理** 。
 4. （可选）在 **参数列表** 页面上方的搜索框中，输入参数名相关信息进行模糊搜索。![修改参数](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/4716860061/p168819.png)
 5. 找到待修改的参数，在对应的 **操作** 列中，单击 **修改值** 。
 6. 在弹出的对话框中，修改参数的值及生效范围，单击 **确定** 。

   ![09071352](https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/0260562361/p324226.png)

   由于 OceanBase 集群参数可以有全局（即 **集群** ）、Zone 和 Server 三种生效范围，故在修改值时请根据业务需要选择生效范围。

   默认生效范围是 **集群** 。如果需要调整到 Zone 或 Server 的生效范围，则可以在 **生效范围** 列取消选中 **集群** ，此时系统会显示集群下的 Zone 列表。根据提示选择 Zone 并选中，则选中了 Zone 的生效范围；如果选择 Zone 后，继续选择该 Zone 下的 Server 列表，则在 Server 范围生效。

   如果需要修改参数的值同时在不同的范围生效，例如，修改 **backup_concurrency** 在 **Zone 1** 为 **10** ；在 **Zone 2** 为 **12** ；在 **Server 1** 上为 20，则可以在 **值** 列点单击 **添加值** 后出现 3 行记录。每行记录可以选中对应的生效范围。

   > **说明**
   >
   >  
   >
   > 如果单击 **添加值** 后出现多行修改值时，对集群的参数修改顺序是从第一行往下依次执行，并且每次执行成功后，会在 **修改历史** 页签中产生一条历史记录。

## 通过 OBD 修改集群参数

1. 在 OBD 所在机器的操作用户下使用如下命令打开集群的配置文件：

   ```bash
   obd cluster edit-config <deploy_name>

   ```
 2. 修改/添加配置文件中的配置项

   配置文件各个模块的含义可参考 [配置文件说明](https://www.oceanbase.com/docs/community-obd-cn-1000000000050418)。

   若需要修改的参数配置文件中不存在，您可手动添加配置项，根据不同的生效范围选择添加到全局配置或节点配置。
 3. 保存配置后重启集群

   保存并退出配置文件后，OBD 会提示需要执行 `obd cluster reload <deploy_name>` 或 `obd cluster restart <deploy_name> --wp` 命令，根据提示执行对应命令即可完成集群参数的修改。

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