PostgreSQL shared_buffers的单位是什么?

时间:2014-07-03 08:49:25

标签: postgresql

我想更改mu pgsql数据库配置,我想知道他们用什么单位来描述一些值。大多数情况下,我想了解shared_buffers。

如果我的shared_buffers值是例如16384,那它是KB吗? MB?字节?这个值的单位是多少?

3 个答案:

答案 0 :(得分:6)

执行时

SHOW shared_buffers;

我得到像

这样的东西
 shared_buffers
----------------
 256MB
(1 row)

这告诉当前值。

答案 1 :(得分:6)

shared_buffers计入磁盘块。默认block_size设置为8kB,无需重新编译服务器即可进行更改,因此几乎可以肯定您正在使用的设置。这意味着shared_buffers=16384相当于128MB。

SELECT * FROM pg_settings将显示设置的基本单位等。正如@DrColossos指出的那样,SHOW shared_buffers会为您提供合格的金额,就像@Raptor所说的那样,您可以(并且应该!)为具有它们的任何设置指定单位。

答案 2 :(得分:4)

对于shared_buffers设置,您可以指定单位,例如

shared_buffers = 3840MB

在官方文件中,它说:

  

避免整数 - 你需要知道基础单位以弄清楚它们的含义。

P.S。建议值=可用内存的25%

参考: