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
相关推荐
涛ing22 分钟前
32. C 语言 安全函数( _s 尾缀)
linux·c语言·c++·vscode·算法·安全·vim
__雨夜星辰__24 分钟前
Linux 学习笔记__Day2
linux·服务器·笔记·学习·centos 7
大耳朵土土垚24 分钟前
【Linux】日志设计模式与实现
linux·运维·设计模式
深度Linux6 小时前
Linux网络编程中的零拷贝:提升性能的秘密武器
linux·linux内核·零拷贝技术
太阳伞下的阿呆9 小时前
排查定位jar包大文件
java·centos·jar
chian-ocean9 小时前
从理论到实践:Linux 进程替换与 exec 系列函数
linux·运维·服务器
拎得清n9 小时前
UDP编程
linux
敖行客 Allthinker10 小时前
从 UTC 日期时间字符串获取 Unix 时间戳:C 和 C++ 中的挑战与解决方案
linux·运维·服务器·c++
夏尔Gaesar11 小时前
Vim安装与配置教程(解决软件包Vim没有安装可候选)
linux·编辑器·vim
hunter20620611 小时前
如何监控ubuntu系统某个程序的运行状态,如果程序出现异常,对其自动重启。
linux·chrome·ubuntu