温馨提示×

centos如何查看postgresql日志

小樊
35
2026-10-06 08:36:34
栏目: 云计算

在 CentOS 上查看 PostgreSQL 日志,通常有以下几种方式,取决于你的安装方式和配置。


一、先确认 PostgreSQL 日志位置

1. 查看 PostgreSQL 配置文件

psql -U postgres -c "SHOW log_directory;"
psql -U postgres -c "SHOW log_filename;"

常见结果:

  • log_directory:log 或 /var/lib/pgsql/12/data/log
  • 日志文件类似:postgresql-Thu.log 或 postgresql.log

二、CentOS 常规日志位置(最常见)

1. 使用 yum / dnf 安装的 PostgreSQL

日志通常在:

/var/lib/pgsql/<版本>/data/log/

例如:

/var/lib/pgsql/12/data/log/postgresql-Thu.log

查看日志:

ls /var/lib/pgsql/12/data/log/
tail -f /var/lib/pgsql/12/data/log/postgresql-*.log

2. 日志输出到系统日志(rsyslog / journalctl)

如果是通过 systemd 启动:

journalctl -u postgresql
journalctl -u postgresql -f

或(老版本):

tail -f /var/log/messages | grep postgres

三、查看 PostgreSQL 是否在运行

systemctl status postgresql
ps aux | grep postgres

四、如果没有日志文件(未开启日志)

检查配置:

vi /var/lib/pgsql/12/data/postgresql.conf

确认以下参数:

logging_collector = on
log_directory = 'log'
log_filename = 'postgresql-%a.log'
log_statement = 'all'   # 可选,记录 SQL

修改后重启:

systemctl restart postgresql

五、常见排查命令

# 实时查看日志
tail -f /var/lib/pgsql/12/data/log/postgresql-*.log

# 查看错误
grep ERROR /var/lib/pgsql/12/data/log/postgresql-*.log

# 查看连接问题
grep "connection" /var/lib/pgsql/12/data/log/postgresql-*.log

如果你愿意,可以告诉我:

  • PostgreSQL 版本(psql --version)
  • 安装方式(yum / 源码 / Docker)
  • 具体想查什么(启动失败 / 慢查询 / 连接错误)

我可以直接给你精确命令。

0 踩