postgresql参数优化

news/2024/7/9 21:57:22 标签: postgresql, 数据库

一 相关参数介绍

1.1 内存参数-shared_buffers

shared_buffers:共享缓存区的大小,相当于oracle数据库中的SGA.

一般推荐为内存的四分之一,不超过总内存的二分之一。

该值默认是128M。

1.2 cpu并行参数-max_parallel_workers

max_parallel_workers 定义了数据库可以使用的并行查询工作者的最大数量。每个并行工作者都可以在不同的CPU核心上执行查询操作,从而加速查询处理。通过适当配置这个参数,可以根据系统的硬件资源来控制并行查询的规模。可以在某种程度上控制数据库的整体CPU使用。

默认情况下,max_parallel_workers 的值为 8。这意味着 PostgreSQL 允许同时使用最多 8 个并行工作者来执行查询。

1.3 慢sql参数-log_min_duration_statement

log_min_duration_statement:从log找出执行超过一定时间的SQL。这个参数是设置执行最小多长时间的SQL输出到log,例如输出执行超过2秒的SQL。

启用查询日志:

首先,确保 PostgreSQL 的查询日志已启用。您可以编辑 PostgreSQL 的配置文件(通常是 postgresql.conf)并设置以下参数:

log_statement = 'ddl'

log_min_duration_statement = 2000

log_statement:该参数值为 "all"表示记录所有查询类型(SELECT、INSERT、UPDATE、DELETE),比较占用空间,且性能会降低,因此建议将其设置为ddl,只记录修改表结构的sql。

log_min_duration_statement:设置查询的最小持续时间,以毫秒为单位。在上面的示例中,它设置为 2000 毫秒(2秒)。

二 优化该参数

2.1 查看参数文件位置

show config_file;

2.2 修改参数值

修改以下参数:

shared_buffers=80GB

max_parallel_workers=20

log_statement = 'ddl'

log_min_duration_statement = 2000

2.3 重启数据库

配置以systemctl方式启动postgre,并配置开机自启。

2.3.1 新建service文件

systemctl restart postgresql

2.3.4 设置开机自启动

systemctl enable postgresql

2.4 检查确认

show max_parallel_workers;

show shared_buffers;

select pg_sleep(3);

观察日志,看是否能看到慢sql。


http://www.niftyadmin.cn/n/5100877.html

相关文章

Android SurfaceView预览相机黑屏问题解决方案

解决方案 1、使用动态添加的方式添加surfaceView 在xml文件中添加FrameLayout <FrameLayoutandroid:id"id/colorsurface"android:layout_width"match_parent"android:layout_height"match_parent" /> 2.创建SurfaceView并添加到FrameL…

如何做好需求收集?方法和步骤

需求收集是理解你想要构建什么以及为什么要构建它的过程。需求收集通常被视为开发软件应用&#xff0c;或开发硬件产品的一部分。其重要性不言而喻。据调查显示50%以上产品在市场上失败的原因&#xff0c;是由于忽视了用户需求。 一、需求收集为什么会困难&#xff1f; 困扰项…

Netty系列教程之NIO基础知识

近30集的孙哥视频课程&#xff0c;看完一集整理一集来的&#xff0c;内容有点多&#xff0c;请大家放心食用~ 1. 网络通讯的演变 1.1 多线程版网络通讯 在传统的开发模式中&#xff0c;客户端发起一个 HTTP 请求的过程就是建立一个 socket 通信的过程&#xff0c;服务端在建立…

数据结构实验一 线性表

目录 1. 好玩的约瑟夫环-单链表版本 2. 递增有序顺序表的插入 1. 好玩的约瑟夫环-单链表版本 【题目描述】 有M个人&#xff0c;编号分别为1到M&#xff0c;玩约瑟夫环游戏&#xff0c;最初时按编号顺序排成队列&#xff1b;每遍游戏开始时&#xff0c;有一个正整数报数密码…

使用canvas实现图片轮播抽奖效果,轮播速度由慢到快,然后再到慢

整体的效果就是中间的那张图片会连续不断地切换&#xff0c;我部署到github上面了&#xff0c;可以点击链接试一试&#xff1a;canvas在线抽奖系统效果 附上源代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-…

vue 动态数字效果 vue-animate-number

安装 vue-animate-number 插件 npm install vue-animate-number &#xff08;注&#xff1a;是npm、cnpm还是yarn根据具体项目要求&#xff09; 在 main.js 中引入 import Vue from vue import VueAnimateNumber from vue-animate-number Vue.use(VueAnimateNumber)动态使用…

VR智能家居虚拟连接仿真培训系统重塑传统家居行业

家居行业基于对场景的打造及设计&#xff0c;拥有广阔前景&#xff0c;是众多行业里面成为最有可能进行元宇宙落地的应用场景之一。 家居行业十分注重场景的打造及设计&#xff0c;而元宇宙恰恰能通过将人工智能、虚拟现实、大数据、物联网等技术融合提升&#xff0c;带来身临其…

大模型背景下软件工程的机遇与挑战

点击链接了解详情 本文作者&#xff1a;汪晟杰 导语:AISE&#xff08;AI Software Engineering&#xff09;有人说是软件工程 3.0&#xff0c;即基于大模型&#xff08;LLM - Large Language Model&#xff09;时代下的软件工程。那么究竟什么是 AISE&#xff0c;他的发展历程对…