OceanBase 数据库提供两种方式以设置自身内存的上限:
按照计算机器总内存上限的百分比计算自身可以使用的总内存,由
memory_limit_percentage
参数配置。直接设置 OceanBase 数据库可用内存的上限,由
memory_limit
参数配置。其中memory_limit
参数值为 0 时,使用百分比的配置方式,否则使用绝对值的配置方式。
下述表格示例了当在一台 100 GB 的机器上启动一个 OceanBase 数据库实例时,memory_limit_percentage
和 memory_limit
参数的值是如何影响 OceanBase 数据库的内存上限的。
示例 | memory_limit_percentage | memory_limit | OceanBase 内存上限 |
---|---|---|---|
示例 1 | 80 | 0 | 80GB |
示例 2 | 80 | 90GB | 90GB |
示例 1 中由于 memory_limit
为 0,故以 memory_limit_percentage
为准,OceanBase 数据库内存上限为 100GB*80%=80 GB。
示例2 中由于 memory_limit
为 90 GB,故以 memory_limit
为准,OceanBase 数据库内存上限为 90 GB。
注意
目前主流的 OceanBase 数据库服务器一般内存为 384 GB 或 512 GB,384 GB 内存建议配置为使用机器内存的 80%,512 GB 内存建议配置为使用机器内存的 90%。