由于安装的时候,没有优化系统内核和pg的参数,在出现比较高压力的情况下,数据库会会比较吃力了。
所以就想着优化一下数据库,其中一个选项的优化就是shared_buffer,按照官方文档的说法,这个选项设置为物理内存的25%,服务器的内存为8G,故将此选项设置为1G:
shared_buffers = 2048MB
设置好之后,重启postgresql,
- $ pg_ctl start -D /usr/local/pgsql/data
- server starting
看到上面的提示,以为一切很顺利,但很快就发现自己错了。
- $lsof -i :5432
敲下命令后,并没有输入想要的结果,觉得是有问题了,查看post的log,发现有报错:
原来是系统的内核参数kern.rpc.SHMALL的默认值太小了,需要将其放大
- #sysctl kern.ipc.shmmax=5368709120
设置好之后,再来启动postgresql就可以起来了。
转载于:https://blog.51cto.com/zoufuxing/1038350