---
title: "memory_limit | OceanBase 文档中心"
description: "memory_limit memory_limit 表示可用的总内存大小。 属性 描述 参数类型 容量单位 默认值 0 取值范围 [0M, +∞) 是否重启 OBServer 生效 否 memory_limit 的默认值为 0 。如果该值不为 0 ，则系统会忽略 memory_limit_percentage 的设置…"
---
切换语言

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

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

# memory_limit

更新时间：2026-03-02 15:45:29

`memory_limit` 表示可用的总内存大小。

| **属性** | **描述** |
| --- | --- |
| 参数类型 | 容量单位 |
| 默认值 | 0 |
| 取值范围 | [0M, +∞) |
| 是否重启 OBServer 生效 | 否 |

`memory_limit` 的默认值为 `0`。如果该值不为 `0`，则系统会忽略 `memory_limit_percentage` 的设置而优先使用 `memory_limit` 配置的值。例如，一台物理机的内存为 100 GB，`memory_limit_percentage` 设置为 `80`，表示使用 80% 的内存，而 `memory_limit` 参数设置为 `'90G'`，则实际物理机上 OceanBase 数据库可分配的内存使用 `memory_limit` 的配置，即 90 GB。

使用注意事项：

- `memory_limit` 的默认单位为 MB。

  例如，`memory_limit='40G'` 表示设置 OceanBase 数据库进程的使用内存上限是 40 GB。由于默认单位为 MB，则 `memory_limit=40960` 与 `memory_limit='40G'` 设置的值相同。
 - `memory_limit` 的值目前无上限。如果设置的内存最大上限超过了实际的物理内存总和，则会导致系统中其他按总内存计算的值偏大。
 - 如果希望限制运行中的 OceanBase 数据库的内存大小，可以直接修改 `memory_limit` 的值，使其达到预期。设置后，后台参数 Reload 线程会使其动态生效，无需重启。但是在设置时，需要保证 `memory_limit` 的值小于系统总的值。

  > **注意**
  >
  >  
  >
  > `memory_limit` 的值必须大于 OBServer 实际已使用的内存。

  查询当前已使用的内存数（单位：GB）的方法如下：

  ```sql
  obclient> SELECT value/1024/1024/1024 used_gb FROM v$sysstat WHERE name LIKE '%observer memory%' AND con_id = 1 AND stat_id=140008 AND name='observer memory used size';

  ```

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