debian

PostgreSQL在Debian上如何进行故障排查

小樊
38
2025-11-21 13:50:04
栏目: 云计算

Debian 上 PostgreSQL 故障排查步骤

一 快速定位与通用检查

二 常见故障场景与处理

症状 快速检查 处理要点
无法连接数据库 服务是否运行;端口 5432 是否放行;日志是否有 FATAL/拒绝信息 启动服务:sudo systemctl start postgresql;放行防火墙:sudo ufw allow 5432/tcp;必要时在 postgresql.conf 设置 listen_addresses = ‘*’,在 pg_hba.conf 增加条目如 host all all 0.0.0.0/0 md5,然后 reload/restart
认证失败 pg_hba.conf 的认证方式是否匹配;用户密码是否正确 本地以 sudo -u postgres psql 登录后执行 ALTER USER postgres WITH PASSWORD ‘new_password’;调整 pg_hba.conf 的 METHOD(如 md5/scram-sha-256)并 reload
查询很慢 当前活跃会话与锁:SELECT * FROM pg_stat_activity; EXPLAIN (ANALYZE, BUFFERS) 定位瓶颈;创建合适索引;执行 ANALYZE 更新统计信息
磁盘空间耗尽 df -h;WAL 是否堆积 检查归档是否正常;清理过期 WAL:pg_archivecleanup /pgdata/pgwal <WAL文件名>;核查复制槽:SELECT * FROM pg_replication_slots; 必要时 SELECT pg_drop_replication_slot(‘slot_name’);
复制/备库延迟或中断 主备日志、复制槽、网络 核对 primary_conninfo、WAL 保留与传输方式;清理无效复制槽;确保网络稳定与带宽充足
异常重启或疑似内存问题 内核日志 dmesg;OOM 杀手;实例日志 降低会话/工作内存(如 work_mem)、连接数;检查是否有连接泄漏;必要时增加系统内存或优化查询/索引

以上处理要点涉及的命令与路径为 Debian 上的常见位置与用法,具体版本与目录名以实际环境为准。

三 性能与日志分析进阶

四 数据安全与恢复建议

0
看了该问题的人还看了