安装指南

如何下载和安装 PG Exporter

PG Exporter 提供多种安装方式以适应不同的部署场景。本指南涵盖了各平台的所有可用安装选项及详细说明。


Pigsty

最简单的使用 pg_exporter 的方式是使用 Pigsty,这是一个完整的 PostgreSQL 发行版,内置了基于 pg_exporter、Prometheus 和 Grafana 的可观测性最佳实践。您甚至不需要了解 pg_exporter 的任何细节,它会直接为您提供所有指标和仪表盘面板。

curl -fsSL https://repo.pigsty.io/get | bash; cd ~/pigsty;

发布版本

您也可以直接从 GitHub 发布页面 下载 pg_exporter 软件包(RPM/DEB/Tarball):

v1.1.1 发布文件:

类型文件
DEB (amd64)pg-exporter_1.1.1-1_amd64.deb
DEB (arm64)pg-exporter_1.1.1-1_arm64.deb
DEB (ppc64le)pg-exporter_1.1.1-1_ppc64le.deb
RPM (aarch64)pg_exporter-1.1.1-1.aarch64.rpm
RPM (x86_64)pg_exporter-1.1.1-1.x86_64.rpm
RPM (ppc64le)pg_exporter-1.1.1-1.ppc64le.rpm
Tarball (Linux amd64)pg_exporter-1.1.1.linux-amd64.tar.gz
Tarball (Linux arm64)pg_exporter-1.1.1.linux-arm64.tar.gz
Tarball (Linux ppc64le)pg_exporter-1.1.1.linux-ppc64le.tar.gz
Tarball (macOS amd64)pg_exporter-1.1.1.darwin-amd64.tar.gz
Tarball (macOS arm64)pg_exporter-1.1.1.darwin-arm64.tar.gz
Tarball (Windows amd64)pg_exporter-1.1.1.windows-amd64.tar.gz

您可以直接使用操作系统的包管理器(rpm/dpkg)安装,或者将二进制文件放入 $PATH 中。


软件仓库

pg_exporter 软件包也可以在 pigsty-infra 仓库中获取。您可以将该仓库添加到系统中,然后使用操作系统包管理器安装:

YUM

适用于 RHEL、RockyLinux、CentOS、Alma Linux、OracleLinux 等 EL 系发行版:

sudo tee /etc/yum.repos.d/pigsty-infra.repo > /dev/null <<-'EOF'
[pigsty-infra]
name=Pigsty Infra for $basearch
baseurl=https://repo.pigsty.io/yum/infra/$basearch
enabled = 1
gpgcheck = 0
module_hotfixes=1
EOF

sudo yum makecache;
sudo yum install -y pg_exporter

APT

适用于 Debian、Ubuntu 及兼容的 Linux 发行版:

sudo tee /etc/apt/sources.list.d/pigsty-infra.list > /dev/null <<EOF
deb [trusted=yes] https://repo.pigsty.io/apt/infra generic main
EOF

sudo apt update;
sudo apt install -y pg-exporter

Docker

我们在 Docker Hub 上提供了 amd64arm64 架构的预构建镜像:pgsty/pg_exporter

# 基本用法
docker run -d \
  --name pg_exporter \
  -p 9630:9630 \
  -e PG_EXPORTER_URL="postgres://user:password@host:5432/postgres" \
  pgsty/pg_exporter:latest

# 使用自定义配置
docker run -d \
  --name pg_exporter \
  -p 9630:9630 \
  -v /path/to/pg_exporter.yml:/etc/pg_exporter.yml:ro \
  -e PG_EXPORTER_CONFIG="/etc/pg_exporter.yml" \
  -e PG_EXPORTER_URL="postgres://user:password@host:5432/postgres" \
  pgsty/pg_exporter:latest

# 启用自动发现
docker run -d \
  --name pg_exporter \
  -p 9630:9630 \
  -e PG_EXPORTER_URL="postgres://user:password@host:5432/postgres" \
  -e PG_EXPORTER_AUTO_DISCOVERY="true" \
  -e PG_EXPORTER_EXCLUDE_DATABASE="template0,template1" \
  pgsty/pg_exporter:latest

二进制安装

pg_exporter 可以作为独立的二进制文件安装。从发布页面下载适合您平台的 tarball,解压后将二进制文件放入 $PATH 即可使用。


兼容性

当前 pg_exporter 支持 PostgreSQL 10 及以上版本,但设计上可以兼容任何 PostgreSQL 主版本(向下兼容到 9.x)。

使用旧版本(9.6 及以下)的唯一问题是,由于这些版本已停止维护,我们移除了对应的旧版指标采集器分支定义。

您可以随时获取这些旧版配置文件,用于监控历史版本的 PostgreSQL。

PostgreSQL 版本支持状态
10 ~ 18✅ 完全支持
9.6 及更早⚠️ 需要旧版配置

pg_exporter 支持 pgBouncer 1.8+,因为 v1.8 是第一个支持 SHOW 命令的版本。

pgBouncer 版本支持状态
1.8.x ~ 1.25.x✅ 完全支持
1.8.x 之前⚠️ 无指标

最后修改 2026-01-09: add supabase asciinema demo (3104503)