PostgreSQL作为目前主流数据库之一,目前在企业中得到广泛应用, 但如果您不熟悉 PostgreSQL,您面临的最常见挑战是如何调整您的数据库环境。 当安装PostgreSQL,它会自动生成一个基本的文件postgresql.conf。根据您使用的操作系统,此配置文件通常保存在数据目录中。例如,在 Ubuntu 中,PostgreSQL 将配置(pg_hba.conf、postgresql.conf、pg_ident.conf)放在 /etc/postgresql 目录中。在调整 PostgreSQL 数据库之前,首先必须找到 postgresql.conf 文件。
但是要使用的正确设置是什么?最初设置的值是什么?今天介绍一个postgresql配置文件自动器:PGTune。它将帮助您轻松解决这个特定问题。
PGTune 是一个配置向导,最初由来自2ndQuadrant的Greg Smith创建。它基于一个 Python 脚本,不幸的是它不再受支持(它不支持较新版本]PostgreSQL。)。目前它已转换为网页配置PGTune(基于原始PGTune),现在是一个配置向导,可用于 PG 数据库配置设置。PGTune用于根据给定硬件配置的最大性能计算PostgreSQL的配置参数。不过它也不是灵丹妙药,因为postgresql配置参数不仅取决于硬件配置,还取决于数据库的大小、客户端数量和查询的复杂性。
PGTune的使用也很方便,只需要浏览器输入PGTune的地址即可访问。下面给出一个简单的例子如下:
您需要做的就是在下面指定以下字段:
然后点击生成按钮。或者,您也可以运行生成 postgresql.auto.conf 的 ALTER SYSTEM 语句,但需要postgresql实例重启才生效。
配置文件展示:
# DB Version: 14# OS Type: linux# DB Type: oltp# Total Memory (RAM): 32 GB# CPUs num: 8# Connections num: 1000# Data Storage: ssdmax_connections = 1000shared_buffers = 8GBeffective_cache_size = 24GBmaintenance_work_mem = 2GBcheckpoint_completion_target = 0.9wal_buffers = 16MBdefault_statistics_target = 100random_page_cost = 1.1effective_io_concurrency = 200work_mem = 2097kBmin_wal_size = 2GBmax_wal_size = 8GBmax_worker_processes = 8max_parallel_workers_per_gather = 4max_parallel_workers = 8max_parallel_maintenance_workers = 4