如何查看PostgreSQL日志文件
PostgreSQL有3种日志,分别是pg_log(数据库运行日志)、pg_xlog(WAL 日志,即重做日志)、pg_clog(事务提交日志,记录的是事务的元数据)
推荐学习《Python教程》
1、要查看PostgreSQL日志文件,首先需要有日志文件,所以我们先将日志记录功能打开;
pg_log默认是关闭的,需要设置参数启用此日志。pg_xlog和pg_clog都是强制打开的,无法关闭。
启用pg_log并配置日志参数:
log_destination = 'csvlog' logging_collector = on log_directory = 'pg_log' log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' log_rotation_age = 1d log_rotation_size = 100MB log_min_messages = info # 记录执行慢的SQL log_min_duration_statement = 60 log_checkpoints = on log_connections = on log_disconnections = on log_duration = on log_line_prefix = '%m' # 监控数据库中长时间的锁 log_lock_waits = on # 记录DDL操作 log_statement = 'ddl'
2、然后需要重启PostgreSQL,即可在$PGDATA/pg_log/ 下看到新生成的日志。
pg_ctl restart -m fast
3、PostgreSQL的日志文件目录如下:
日志的目录可以通过参数 log_directory 来设置,下面是我的参数设置。
log_directory = '/var/applog/pg_log'
[postgres@pg_log]$ ll /var/applog/pg_log -rw------- 1 postgres postgres 4.8M Mar 14 23:57 postgresql-2011-03-14_000000.csv -rw------- 1 postgres postgres 0 Mar 14 00:00 postgresql-2011-03-14_000000.log -rw------- 1 postgres postgres 294K Mar 15 15:10 postgresql-2011-03-15_000000.csv -rw------- 1 postgres postgres 0 Mar 15 00:00 postgresql-2011-03-15_000000.log
4、最后就是查看PostgreSQL的日志了,可以使用cat命令、more命令等等。
cat /var/applog/pg_log/postgresql-2011-03-14_000000.log more /var/applog/pg_log/postgresql-2011-03-14_000000.log
推荐:postgresql教程