PostgreSQL shared_buffers的单位是什么?

roejwanj  于 2023-06-22  发布在  PostgreSQL
关注(0)|答案(3)|浏览(181)

我想改变我的pgsql数据库配置,我想知道他们用什么单位来描述一些值。我想知道的是shared_buffers。此值没有指定的单位,只有提供的数字。
如果我的shared_buffers值例如16384,是kB吗?mB?字节?这个值的单位是什么?

g6baxovj

g6baxovj1#

shared_buffers按磁盘块计数。默认的block_size设置是8 kB,如果不重新编译服务器就无法更改,所以几乎可以肯定这就是您正在使用的。这意味着shared_buffers=16384等于128 MB。
SELECT * FROM pg_settings将显示设置的基本单位以及其他内容。正如@DrColossos所指出的,SHOW shared_buffers会给予你一个合格的数量,就像@Raptor说的,你可以(也应该!)为具有单位的任何设置指定单位。

gg0vcinb

gg0vcinb2#

当你执行

SHOW shared_buffers;

我得到的是

shared_buffers
----------------
 256MB
(1 row)

这将告诉当前值。

sg3maiej

sg3maiej3#

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

shared_buffers = 3840MB

在官方文件中,它说:
避免使用整数--你需要知道底层的单位来弄清楚它们的意思。
p.s.建议值=可用内存的25%
参考文献:

相关问题