---
title: "内存相关参数 - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: 内存相关参数 OceanBase 数据库支持通过参数来设置和管理内存的使用。 说明 有关以下提到的参数的详细介绍，请参见 配置项和系统变量概述 章节。 OBServer 节点总内存 表示 OBServer 节点所有内存的上限，即所有租户累加不可能超过的上限，由两个参数控制： memory_limit_percenta…
---
切换语言

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

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

# 内存相关参数

更新时间：2026-03-07 12:05:58

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/100.oceanbase-database-concepts/1200.observer-node-architecture/500.memory-management/200.memory-related-parameters.md)  

OceanBase 数据库支持通过参数来设置和管理内存的使用。

#### 说明

有关以下提到的参数的详细介绍，请参见 [配置项和系统变量概述](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004475831) 章节。

## OBServer 节点总内存

表示 OBServer 节点所有内存的上限，即所有租户累加不可能超过的上限，由两个参数控制：

- memory_limit_percentage：物理机或者容器物理内存的百分比。
 - memory_limit：绝对数值。

当 `memory_limit` 不为 `0M` 时，使用 `memory_limit` 作为上限，否则使用 memory_limit_percentage 计算后的值作为上限。

## 高优先级预留内存

表示给一些特别重要的底层模块预留的一块空间。

可以通过 memory_reserved 参数进行设置。

## 500 租户内存

表示 500 租户预留内存，可以通过 `system_memory` 参数进行设置。

注意它不是 limit 的语义，目前的实现上 500 租户实际可使用内存是可能突破 `system_memory` 的，但其他租户可使用内存不能超过 `memory_limit - system_memory` 的值。

## 业务租户内存

业务租户内存由租户创建 Unit 时指定。命令示例如下。

```sql
create resource unit if not exists sp_trans_test MAX_CPU=1, MEMORY_SIZE='5G', MAX_IOPS=128000, MIN_IOPS=128000, LOG_DISK_SIZE='2G';

create resource pool if not exists sp_trans_test unit='sp_trans_test', unit_num=1;

create tenant if not exists sp_trans_test RESOURCE_POOL_LIST=('sp_trans_test') set ob_tcp_invited_nodes='%';

```

OceanBase 数据库支持动态调整 Unit 规格（缩容需谨慎）。

```sql
alter RESOURCE UNIT sp_trans_test MAX_CPU=1, MEMORY_SIZE='6G';

```

系统租户可以通过视图查询 Unit 规格。

```sql
obclient> SELECT * FROM oceanbase.DBA_OB_UNIT_CONFIGS\G
*************************** 1. row ***************************
UNIT_CONFIG_ID: 1
          NAME: sys_unit_config
       MAX_CPU: 2.5
       MIN_CPU: 2.5
   MEMORY_SIZE: 17179869184
 LOG_DISK_SIZE: 17179869184
      MAX_IOPS: 25000
      MIN_IOPS: 25000
   IOPS_WEIGHT: 2
*************************** 2. row ***************************
UNIT_CONFIG_ID: 1001
          NAME: unit001
       MAX_CPU: 2
       MIN_CPU: 2
   MEMORY_SIZE: 6442450944
 LOG_DISK_SIZE: 19327352832
      MAX_IOPS: 20000
      MIN_IOPS: 20000
   IOPS_WEIGHT: 2
*************************** 3. row ***************************
UNIT_CONFIG_ID: 1004
          NAME: sp_trans_test
       MAX_CPU: 1
       MIN_CPU: 1
   MEMORY_SIZE: 5368709120
 LOG_DISK_SIZE: 2147483648
      MAX_IOPS: 128000
      MIN_IOPS: 128000
   IOPS_WEIGHT: 0
3 rows in set

```

### 租户内存分类

租户内存分为两类，MemStore 与 SQL 执行。

- **MemStore**

  主要用于保存数据库增量数据。MemStore 上限由参数 MemStore_limit_percentage 控制，它表示租户 MemStore 最多占租户总内存上限的百分比。freeze_trigger_percentage 参数用于控制转储时机，它表示当 MemStore 内存达到 MemStore 上限的某个百分比时触发转储，租户 MemStore 的使用可以通过内部表查看。

  ```sql
  MySQL [oceanbase]> select * From GV$OB_MEMSTORE;
  +-----------+----------------+-------+-----------+-----------+---------------------+---------------------+------------+
  | TENANT_ID | IP             | PORT  | ACTIVE    | TOTAL     | FREEZE_TRIGGER      | MEM_LIMIT           | FREEZE_CNT |
  +-----------+----------------+-------+-----------+-----------+---------------------+---------------------+------------+
  |         1 | xx.xx.xx.xx    | 46824 | 169792200 | 171966464 |          5153960700 |         10307921440 |          0 |
  |       500 | xx.xx.xx.xx    | 46824 |         0 |         0 | 3689348814741910300 | 7378697629483820640 |          0 |
  |      1001 | xx.xx.xx.xx    | 46824 |  33539200 |  35651584 |           382730200 |           858993440 |          0 |
  |      1002 | xx.xx.xx.xx    | 46824 |         0 | 228589568 |         34359738350 |         68719476720 |          0 |
  +-----------+----------------+-------+-----------+-----------+---------------------+---------------------+------------+

  ```
 - **SQL 执行**

  表示 SQL 执行所需要的内存以及为了提高吞吐做的缓存，比如 SQL 执行计划等。

  ob_sql_work_area_percentage 是 SQL 工作区内存参数，表示 SQL 可能耗费大量内存的阻塞性算子所使用的内存。

## sys 租户内存

前面提到，sys 租户就是实体租户，它的管理机制与业务租户完全一致。

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