概述
因为 postgres 16 只能通过源码的方式在 centos 上安装,所以 timescaledb 也只能通过源码的方式安装.
安装
- 官方文档
前提条件: - 已经安装 postgresql
- CMake 版本大于
3.11
(Cmake安装参考前文) - gcc
# 下载源码
git clone https://github.com/timescale/timescaledb
cd timescaledb
git checkout 2.15.3
# 配置,如果不使用openssl,请添加参数: ./bootstrap -DUSE_OPENSSL=0
./bootstrap
cd build && make
make install
安装完成后配置
- 如果是单机 postgrsql
sudo timescaledb-tune --pg-config=/usr/local/pgsql/bin/pg_config -conf-path=/home/pgsql/data/postgresql.conf
systemctl restart postgresql-16
- 如果是patroni,直接修改postgresql.conf会被patroni重置。需要修改
patroni.yml
# 将 timescaledb-tune 修改的配置文件通过 patroni 写到 postgres
postgresql:
parameters:
shared_preload_libraries: 'timescaledb'
shared_buffers: 1955MB
effective_cache_size: 5865MB
maintenance_work_mem: 1001095kB
work_mem: 5005kB
timescaledb.max_background_workers: 16
max_parallel_workers_per_gather: 2
max_parallel_workers: 4
wal_buffers: 16MB
min_wal_size: 512MB
max_wal_size: 1GB
default_statistics_target: 100
random_page_cost: 1.1
checkpoint_completion_target: 0.9
autovacuum_max_workers: 10
autovacuum_naptime: 10
effective_io_concurrency: 256