---
title: "设置参数 - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: 设置参数 OceanBase 数据库的配置项分为集群级配置项和租户级配置项。您可以通过配置项的设置使 OceanBase 数据库的行为符合您业务的要求。 参数分类 OceanBase 数据库的配置项分为集群级配置项和租户级配置项。通过配置项的设置可以控制整个集群的负载均衡、合并时间、合并方式、资源分配和模块开关等功能…
---
切换语言

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

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

# 设置参数

更新时间：2026-02-24 19:39:24

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/200.system-management/200.configuration-management/200.set-parameters.md)  

OceanBase 数据库的配置项分为集群级配置项和租户级配置项。您可以通过配置项的设置使 OceanBase 数据库的行为符合您业务的要求。

## 参数分类

OceanBase 数据库的配置项分为集群级配置项和租户级配置项。通过配置项的设置可以控制整个集群的负载均衡、合并时间、合并方式、资源分配和模块开关等功能。

- 集群级配置项：作用范围为整个集群所有 OBServer。
 - 租户级配置项：作用范围为当前租户在集群内所在的 OBServer。

名称以 "_" 开头的配置项称为隐藏配置项，如：`_ob_max_thread_num`。仅供开发人员在故障排查或紧急运维时使用。本文不对隐藏配置项进行详细介绍，下文中的配置项均不包含隐藏配置项。

不同租户对配置项的查看和修改级别如下表所示：

| 租户类型 | 参数查看 | 参数设置 |
| --- | --- | --- |
| 系统租户 | 集群级配置项、租户级配置项   #### 说明    `SHOW PARAMETERS` 语句通过指定 `TENANT` 关键字来查看指定租户的配置项信息。 | 集群级配置项、租户级配置项   #### 说明    系统租户下，可以通过指定 `TENANT` 关键字来修改全部或指定租户的租户级配置项。 |
| 普通租户 | 集群级配置项和本租户的租户级配置项 | 本租户的租户级配置项 |

当前 OceanBase 数据库中配置项的主要数据类型及其相关说明如下表所示：

| 数据类型 | 说明 |
| --- | --- |
| BOOL | boolean 类型（布尔），支持 true/false。 |
| CAPACITY | 容量单位，支持 b （字节）、k （KB，千字节）、m （MB，百万字节）、 g （GB，10亿字节）、t （TB，万亿字节）、p（PB，千万亿字节）。单位不区分大小写字母，默认为 m。 |
| DOUBLE | 双精度浮点数，占用 64 bit 存储空间，精确到小数点后 15 位，有效位数为 16 位。 |
| INT | int64 整型，支持正负整数和 0。 |
| MOMENT | 时刻。格式为 `hh:mm`（例如 `02:00`）；或者特殊值 `disable`，表示不指定时间。目前仅用于 `major_freeze_duty_time` 参数。 |
| STRING | 字符串。用户输入的字符串的值。 |
| STRING_LIST | 字符串列表，即以分号 （;）分隔的多个字符串。 |
| TIME | 时间类型。支持 us （微秒）、ms （毫秒）、s （秒）, m （分钟）、h （小时）、d （天）等单位。如果不加后缀，默认为秒（s）。单位不区分大小写字母。 |

## 修改配置项

    MySQL 模式   Oracle 模式

MySQL 模式修改配置项的 SQL 语法如下：

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

```

参数说明：

- `parameter_name`：指定要修改的配置项名称。
 - `expression`：指定修改后的配置项的值。
 - `COMMENT 'text'`：用于添加关于本次修改的注释。该参数为可选，建议不要省略。
 - `SCOPE`：指定本次配置项修改的生效范围，默认为 `BOTH`。

     - `SPFILE`：表示只修改内部表中的配置项值，当 OBServer 节点重启以后才生效。仅重启生效的配置项支持。
     - `BOTH`：表示既修改内部表中的配置项值，又修改内存中的配置项值，修改立即生效，且 OBServer 节点重启以后配置值仍然生效。
 - `TENANT`：用于在系统租户下，修改所有或指定租户的租户级配置项。

     - `ALL`：从 V4.2.1 版本开始，`tenant = all` 和 `tenant = all_user` 具有相同的语义，都表示对所有用户租户生效。`all` 语法即将被废除，不再推荐使用。
     - `all_user`：对所有用户租户生效。
     - `all_meta`：对所有 META 租户生效。
     - `tenant_name`：指定租户。
 - `SERVER`：只修改指定 Server 实例的某个配置项。
 - `ZONE`：表明本配置项的修改针对指定集群的特定 Server 类型，否则，针对所有集群的特定 Server 类型。

  #### 说明

     - 同时修改多个配置项时，以逗号（,）分隔。
     - 集群级配置项不能通过普通租户设置，也不可以通过系统租户（即 `sys` 租户） 指定为普通租户设置，仅支持在系统租户下配置。例如，执行 `ALTER SYSTEM SET memory_limit='100G' TENANT='test_tenant'` 语句将导致报错，因为 `memory_limit` 是集群级配置项。
     - 租户级配置项可以直接在本租户下修改，也可以在系统租户下通过指定 `TENANT` 关键字来修改。
     - `ALTER SYSTEM` 语句不能同时指定 Zone 和 OBServer。并且在指定 Zone 时，仅支持指定一个 Zone；指定 OBServer 时，仅支持指定一个 OBServer。如果修改时，不指定 Zone 也不指定 OBServer，则集群级配置项会在整个集群所有 OBServer 上生效；租户级配置项会在当前租户在集群内所在的 OBServer 上生效。
     - 确认一个配置项为集群级别还是租户级别，可根据 `SHOW PARAMETERS` 语句执行结果中的 `scope` 列对应的值来判断：

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

修改 `log_disk_utilization_threshold` 配置项的示例如下：

```shell
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20;

```

修改指定 Zone 的 `log_disk_utilization_threshold` 配置项的示例如下：

```shell
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 ZONE='z1';

```

修改指定 OBServer 的 `log_disk_utilization_threshold` 配置项的示例如下：

```shell
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 SERVER='XXX.XXX.XXX.XXX:XXXXX';

```

在系统租户下，修改所有或指定租户的租户级配置项。示例如下：

```shell
obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 TENANT='ALL';

obclient> ALTER SYSTEM SET log_disk_utilization_threshold = 20 TENANT='Oracle';

```

#### 说明

执行成功以后，所有被指定租户的配置项均会被修改。

Oracle 模式修改配置项的 SQL 语法如下：

```sql
ALTER SYSTEM SET parameter_name = expression

```

参数说明：

- parameter_name：指定要修改的配置项名称。
 - expression：指定修改后的配置项的值。

  #### 说明

     - 同时修改多个配置项时，以逗号（,）分隔。
     - Oracle 模式下，只能配置租户级配置项。
     - 租户级配置项可以直接在本租户下修改，也可以在系统租户下通过指定 `TENANT` 关键字来修改。

```

## 重置配置项

    MySQL 模式   Oracle 模式

MySQL 模式重置配置项的 SQL 语法如下：

```sql
ALTER SYSTEM [RESET]
parameter_name [SCOPE = {MEMORY | SPFILE | BOTH}] {TENANT [=] 'tenant_name'};

```

参数说明：

- `RESET` 用于清除当前参数的值并使用参数的默认值/启动值。
 - `SCOPE`：指定本次配置项修改的生效范围，默认为 `BOTH`。

     - `MEMORY`：表示仅重置内存中的配置项值，修改后立即生效，且本次修改在 OBServer 节点重启以后会失效（当前暂无配置项支持该方式）。
     - `SPFILE`：表示只重置内部表中的配置项值，当 OBServer 节点重启以后才生效。仅重启生效的配置项支持。
     - `BOTH`：表示既重置内部表中的配置项值，又重置内存中的配置项值，重置立即生效，且 OBServer 节点重启以后配置值仍然生效。
 - `TENANT`：用于在系统租户下，重置所有或指定租户的租户级配置项。

     - `tenant_name`：指定租户。  

  #### 说明

     - 同时重置多个配置项时，以逗号（,）分隔。
     - 集群级配置项不能通过普通租户重置，也不可以通过系统租户（即 `sys` 租户） 指定为普通租户重置，仅支持在系统租户下重置。例如，执行 `ALTER SYSTEM RESET memory_limit TENANT='test_tenant'` 语句将导致报错，因为 `memory_limit` 是集群级配置项。
     - 租户级配置项可以直接在本租户下修改，也可以在系统租户下通过指定 `TENANT` 关键字来修改。
     - `ALTER SYSTEM RESET` 语句不支持指定 Zone 或 OBServer。
     - 确认一个配置项为集群级别还是租户级别，可根据 `SHOW PARAMETERS` 语句执行结果中的 `scope` 列对应的值来判断：

重置 `log_disk_utilization_threshold` 配置项的示例如下：

```sql
obclient> ALTER SYSTEM RESET log_disk_utilization_threshold;

```

在系统租户下，重置所有或指定租户的租户级配置项。示例如下：

```sql
obclient> ALTER SYSTEM RESET log_disk_utilization_threshold TENANT='ALL';
obclient> ALTER SYSTEM RESET log_disk_utilization_threshold TENANT='Oracle';

```

```sql
ALTER SYSTEM [RESET] parameter_name = expression;

```

参数说明：

- `RESET` 用于清除当前参数的值并使用参数的默认值/启动值。
 - parameter_name：指定要重置的配置项名称。
 - expression：指定重置配置项。

  #### 说明

     - 同时重置多个配置项时，以逗号（,）分隔。
     - Oracle 模式下，只能重置租户级配置项。
     - 租户级配置项可以直接在本租户下重置，也可以在系统租户下通过指定 `TENANT` 关键字来重置。

```

## 查看配置项

查看配置项的 SQL 语法如下：

```sql
SHOW PARAMETERS [LIKE 'pattern' | WHERE expr] [TENANT = tenant_name]

```

#### 说明

- 系统租户下，可以查看本租户的租户级配置项和集群级配置项信息。同时，可以通过指定 `TENANT` 关键字来查看指定租户的配置项信息。
 - 普通租户下，可以查看本租户的租户级配置项以及系统租户的集群级配置项信息。
 - `WHERE expr` 中可以指定的列属性与 `SHOW PARAMETERS` 返回结果中的列属性一致。

通过 `SHOW PARAMETERS` 语句查看配置项的示例如下：

```shell
obclient> SHOW PARAMETERS WHERE scope = 'tenant';

obclient> SHOW PARAMETERS WHERE svr_ip != 'XXX.XXX.XXX.XXX';

obclient> SHOW PARAMETERS WHERE INFO like '%ara%';

obclient> SHOW PARAMETERS LIKE 'large_query_threshold';

```

返回结果如下：

```shell
+-------+----------+----------------+----------+-----------------------+-----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------+---------+---------+-------------------+---------------+-----------+
| zone  | svr_type | svr_ip         | svr_port | name                  | data_type | value | info                                                                                                                                                              | section | scope   | source  | edit_level        | default_value | isdefault |
+-------+----------+----------------+----------+-----------------------+-----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------+---------+---------+-------------------+---------------+-----------+
| zone1 | observer | 172.xx.xxx.xxx |     2882 | large_query_threshold | TIME      | 5s    | threshold for execution time beyond which a request may be paused and rescheduled as a \'large request\', 0ms means disable \'large request\'. Range: [0ms, +∞)   | TENANT  | CLUSTER | DEFAULT | DYNAMIC_EFFECTIVE | 5s            |         1 |
+-------+----------+----------------+----------+-----------------------+-----------+-------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------+---------+---------+-------------------+---------------+-----------+
1 row in set

```

返回结果中的列属性如下表所示：

| 列名 | 含义 |
| --- | --- |
| zone | 所在的 Zone |
| svr_type | 机器类型 |
| svr_ip | 机器 IP |
| svr_port | 机器端口 |
| name | 配置项名 |
| data_type | 配置项数据类型，包括 `NUMBER` 、`STRING` 、`CAPACITY` 等 |
| value | 配置项值    **说明**    由于在修改配置项值时，支持修改指定 Zone 或 Server 的配置项值，故不同 Zone 或 Server 对应的配置项的值可能不同。 |
| info | 配置项的说明信息 |
| section | 配置项所属的分类：   - `SSTABLE`：表示 SSTable 相关的配置项。 - `OBSERVER`：表示 OBServer 节点相关的配置项。 - `ROOT_SERVICE`：表示 Root Service 相关的配置项。 - `TENANT`：表示租户相关的配置项。 - `TRANS`：表示事务相关的配置项。 - `LOAD_BALANCE`：表示负载均衡相关的配置项。 - `DAILY_MERGE`：表示合并相关的配置项。 - `CLOG`：表示 Clog 相关的配置项。 - `LOCATION_CACHE`：表示 Location Cache 相关的配置项。 - `CACHE`：表示缓存相关的配置项。 - `RPC`：表示 RPC 相关的配置项。 - `OBPROXY`：表示 OBProxy 相关的配置项。 |
| scope | 配置项范围属性：   - `TENANT`：表示该配置项为租户级配置项 - `CLUSTER`：表示该配置项为集群级配置项 |
| source | 当前值来源：   - `TENANT` - `CLUSTER` - `CMDLINE` - `OBADMIN` - `FILE` - `DEFAULT` |
| edit_level | 定义该配置项的修改行为：   - `READONLY`：表示该参数不可修改。 - `STATIC_EFFECTIVE`：表示该参数可修改但需要重启 OBServer 节点才会生效。 - `DYNAMIC_EFFECTIVE`：表示该参数可修改且修改后动态生效。 |
| default_value | 配置项的默认值。 |
| isdefault | 当前值是否为默认值。   - 0：表示当前值不是默认值。 - 1：表示当前值是默认值。 |

## 更多信息

更多配置项参考信息，请参见 [配置项和系统变量概述](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004475831)。

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