1 概述
浪潮信息KOS是浪潮信息基于Linux Kernel、OpenAnolis等开源技术自主研发的一款服务器操作系统,支持x86、ARM等主流架构处理器,性能和稳定性居于行业领先地位,具备成熟的 CentOS 迁移和替换能力,可满足云计算、大数据、分布式存储、人工智能、边缘计算等应用场景需求。详细介绍见官网链接https://zh.ieisystem.com/product/kos/9453.html。
pgtune是一个用于优化PostgreSQL数据库配置的开源工具。它可以自动根据你的硬件和工作负载为你生成合适的PostgreSQL配置文件。详情介绍见官网https://github.com/le0pard/pgtune。
2 安装环境
2.1 操作系统环境
版本信息:KeyarchOS 5.8
硬件平台:aarch64
2.2工具版本
pgtune-0.9.3-12.da57e00
https://github.com/le0pard/pgtune
厂商名称:GitHub
3 安装与测试
3.1 root权限下安装pgtune-0.9.3-12.da57e00
在http://ftp.sjtu.edu.cn/fedora/epel/7/aarch64/Packages/p/下载安装包
上传至服务器
执行rpm -ivh pgtune-0.9.3-12.da57e00.el7.noarch.rpm尝试安装
缺少依赖,使用yum install pgtune-0.9.3-12.da57e00.el7.noarch.rpm安装
执行pgtune,发现缺少python
执行yum install python2安装python2
执行ln -s /usr/bin/python2 /usr/bin/python创建软链接
再次执行pgtune
安装完成。
3.2测试
pgtune的使用需要postgresql的配置文件postgresql.conf,我们这里创建一个
vim postgresql.conf,内容如下:
# DB Version: 12
# OS Type: linux
# DB Type: oltp
# Total Memory (RAM): 16 GB
# CPUs num: 8
# Connections num: 1000
# Data Storage: ssd
ALTER SYSTEM SET
max_connections = '1000';
ALTER SYSTEM SET
shared_buffers = '4GB';
ALTER SYSTEM SET
effective_cache_size = '12GB';
ALTER SYSTEM SET
maintenance_work_mem = '1GB';
ALTER SYSTEM SET
checkpoint_completion_target = '0.9';
ALTER SYSTEM SET
wal_buffers = '16MB';
ALTER SYSTEM SET
default_statistics_target = '100';
ALTER SYSTEM SET
random_page_cost = '1.1';
ALTER SYSTEM SET
effective_io_concurrency = '200';
ALTER SYSTEM SET
work_mem = '1048kB';
ALTER SYSTEM SET
min_wal_size = '2GB';
ALTER SYSTEM SET
max_wal_size = '8GB';
ALTER SYSTEM SET
max_worker_processes = '8';
ALTER SYSTEM SET
max_parallel_workers_per_gather = '4';
ALTER SYSTEM SET
max_parallel_workers = '8';
ALTER SYSTEM SET
max_parallel_maintenance_workers = '4';
输入:wq保存并退出
执行pgtune -i postgresql.conf -o postgresql-new.conf命令,-i参数为指定要修改的配置文件,-o参数为指定要输出的配置文件,其他参数如需手动配置可参考pgtune --help中的参数说明进行修改,默认的话pgtune会自动根据你的硬件和工作负载为你生成合适的PostgreSQL配置文件
执行cat postgresql-new.conf查看优化后的postgresql.conf配置文件
如果你正在寻找一种简单、自动化的方式来优化你的PostgreSQL数据库,那么pgtune是一个很好的选择。它可以帮助你提高数据库性能,让你的应用程序更快地运行。
上述表明安装成功。