Centos 7 环境下 PostgreSQL 生产环境优化

生产服务器配置:

操作系统:Centos 7 64位

CPU:I5 10代

内存:8核 16G

硬盘:512G

1、调整内核参数:

复制代码
# 编辑 sysctl.conf 文件
vim /etc/sysctl.conf

# 修改内容如下:
# 提高内存缓冲区大小
kernel.shmmax = 8589934592
kernel.shmall = 2097152
# 提高文件描述符限制
fs.file-max = 65536
# 提高网络性能
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.tcp_wmem = 4096 262144 1048576
net.ipv4.tcp_rmem = 4096 262144 4194304

# 重启
sudo sysctl -p

2、调整 PostgreSQL 配置:

复制代码
# 编辑 postgresql.conf 文件
vim /var/lib/pgsql/14/data/postgresql.conf

# 修改内容如下(适用于具有 16GB 内存的配置):
# 提高内存缓冲区大小
shared_buffers = 4GB
# 提高工作内存缓冲区大小
work_mem = 512MB
# 提高同时连接的最大数目
max_connections = 200
# 提高内存排序缓冲区大小
maintenance_work_mem = 2GB
# 提高日志缓冲区大小
wal_buffers = 16MB

# 重启
systemctl restart postgresql-14
相关推荐
Joey_Chen33 分钟前
【What · Why · How】浅析select/poll/epoll与IO多路复用
linux·服务器
“αβ”1 小时前
线程安全的单例模式
linux·服务器·开发语言·c++·单例模式·操作系统·vim
gnawkhhkwang1 小时前
clock_nanosleep系统调用及示例
linux
渡我白衣2 小时前
综合:日志的实现
linux
嶔某2 小时前
网络:基础概念
linux·服务器·网络·c++
ArabySide2 小时前
【Linux】Ubuntu上安装.NET 9运行时与ASP.NET Core项目部署入门
linux·ubuntu·.net
字节高级特工2 小时前
【Linux篇】进程间通信:进程IPC
linux·运维·服务器
二向箔reverse3 小时前
在 CentOS 中安装 MySQL 的过程与问题解决方案
linux·mysql·centos
努力做小白3 小时前
Linux驱动22 --- RV1126 环境搭建&&设备树修改
linux·驱动开发·单片机·嵌入式硬件·rv1126
字节高级特工3 小时前
深入探索Linux:忙碌的车间“进程”间通信
linux·运维·服务器