You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Postgres Exporter因认证问题无法连接远程数据库求助

解决postgres_exporter连接PostgreSQL报错"unknown authentication response:10"的方案

核心原因

错误pq: unknown authentication response: 10对应PostgreSQL的SCRAM-SHA-256认证方式,要么是你使用的postgres_exporter版本不支持该认证,要么是数据库用户的认证配置与exporter不兼容。

解决方案

方案1:降级数据库用户认证方式为md5

  • 登录PostgreSQL数据库,执行SQL修改用户认证规则:
ALTER USER myuser WITH PASSWORD 'my_password' LOGIN;
ALTER USER myuser WITH ENCRYPTED PASSWORD 'my_password';
ALTER USER myuser WITH AUTHENTICATION md5;
  • 修改PostgreSQL的pg_hba.conf配置文件,将对应远程连接的认证方式改为md5:
host    my_database     myuser      remote_server_ip/32     md5
  • 重启PostgreSQL服务生效:
sudo systemctl restart postgresql

方案2:升级postgres_exporter到支持SCRAM-SHA-256的版本

  • 停止现有exporter服务:
sudo systemctl stop postgres_exporter
  • 下载并安装v0.10.0及以上版本(该版本开始支持SCRAM认证,以amd64架构为例):
wget https://github.com/prometheus-community/postgres_exporter/releases/download/v0.11.0/postgres_exporter-0.11.0.linux-amd64.tar.gz
tar xzf postgres_exporter-0.11.0.linux-amd64.tar.gz
sudo mv postgres_exporter-0.11.0.linux-amd64/postgres_exporter /usr/local/bin/
  • 重启服务:
sudo systemctl restart postgres_exporter

方案3:调整连接字符串的SSL配置

如果数据库要求SSL连接,修改postgres_exporter的连接字符串,将sslmode=disable改为sslmode=require(或匹配数据库实际的SSL要求):

postgresql://myuser:my_password@remote_server:5432/my_database?sslmode=require

验证操作

  • 查看exporter日志确认连接状态:
journalctl -u postgres_exporter -f
  • 访问exporter的metrics端点(默认地址http://your_vps_ip:9187/metrics),检查是否能正常获取PostgreSQL指标。

内容的提问来源于stack exchange,提问作者Bruno Henrique Peixoto

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 22:58:15