大家好!
原文链接:https://www.f2er.com/postgresql/192198.html我们目前有以下共享内存参数:
Postgres的
shared_buffers = 7GB max_connections = 1 500 max_locks_per_transaction = 1 024 max_prepared_transactions = 0 (not set)
系统
SHMALL = 2 097 152 SHMMAX = 17 670 512 640 SHMMNI = 4096
RAM的数量是24 693 176k
我们需要将max_connections增加到3000.当我们尝试这样做时,我们收到了错误
[1-1] FATAL: could not create shared memory segment: No space left on device [2-1] DETAIL: Failed system call was shmget(key=5432001,size=8964661248,03600) [3-1] HINT: This error does *not* mean that you have run out of disk space. It occurs either if all available shared memory IDs have been taken,in which case you need to raise the SHMMNI parameter in your kernel,or because the system's overall limit for shared memory has been reached. If you cannot increase the shared memory limit,reduce Postgresql's shared memory request (currently 8964661248 bytes),perhaps by reducing shared_buffers or max_connections. The Postgresql documentation contains more information about shared memory configuration.
提示提出增加SHMMNI内核参数,但我不知道添加多少:)另外,我相信所有这些参数都以某种方式关联,所以我们需要相应地更改任何其他参数吗?
提前致谢,
亚历山大