could not create shared memory segment: 设备上没有空间

[postgres@db223 home]$ pg_ctl start
waiting for server to start....2023-08-17 18:51:47.852 CST [1281811] FATAL:  could not create shared memory segment: 设备上没有空间
2023-08-17 18:51:47.852 CST [1281811] DETAIL:  Failed system call was shmget(key=1615941317, size=56, 03600).
2023-08-17 18:51:47.852 CST [1281811] 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.
        The PostgreSQL documentation contains more information about shared memory configuration.
2023-08-17 18:51:47.852 CST [1281811] LOG:  database system is shut down
 stopped waiting
pg_ctl: could not start server

 查看shmmni

[root@db223 kernel]# cat /proc/sys/kernel/shmmni

4096

出现的原因可能是在同一机器上安装了多个不同端口的pg,导致shmmni太小。

修改shmmni的大小,

/etc/sysctl.conf 
kernel.shmmni=32768

重新加载 sysctl 配置,使其生效

sysctl -p
 

你可能感兴趣的:(postgresql,运维,数据库,kernel,内核)