快速开始

使用扩展的四步流程速览

在 Pigsty 中使用扩展需要四个步骤:下载安装配置启用

  1. 下载:将扩展软件包下载到本地仓库(Pigsty 默认已下载主流扩展)
  2. 安装:在集群节点上安装扩展软件包
  3. 配置:部分扩展需要预加载或配置参数
  4. 启用:在数据库中执行 CREATE EXTENSION 创建扩展

声明式配置

在 Pigsty 配置清单中声明扩展,集群初始化时自动完成安装与启用:

pg-meta:
  hosts: { 10.10.10.10: { pg_seq: 1, pg_role: primary } }
  vars:
    pg_cluster: pg-meta
    pg_databases:
      - name: meta
        extensions: [ postgis, timescaledb, vector ]   # 在数据库中启用扩展
    pg_libs: 'timescaledb, pg_stat_statements, auto_explain' # 预加载扩展库
    pg_extensions: [ postgis, timescaledb, pgvector ]  # 安装扩展软件包

执行 ./pgsql.yml 初始化集群后,postgistimescaledbvector 三个扩展即在 meta 数据库中可用。


命令式操作

对于已有集群,可以使用命令行方式添加扩展:

# 1. 安装扩展软件包
./pgsql.yml -l pg-meta -t pg_extension -e '{"pg_extensions":["pgvector"]}'

# 2. 预加载扩展(如需要,修改后需重启)
pg edit-config pg-meta --force -p shared_preload_libraries='timescaledb, pg_stat_statements, auto_explain'

# 3. 在数据库中启用扩展
psql -d meta -c 'CREATE EXTENSION vector;'

也可以使用 pig 包管理器直接安装:

pig install pgvector        # 安装扩展包
pig extension create vector  # 在数据库中启用

流程速查

步骤参数/命令说明
下载repo_extra_packages指定下载到本地仓库的扩展包
安装pg_extensions指定集群要安装的扩展包
配置pg_libs预加载扩展到 shared_preload_libraries
启用pg_databases.extensions在数据库中自动执行 CREATE EXTENSION

详细说明请参阅各子章节:下载安装配置启用


最后修改 2025-12-21: update blogs (cbce062)