PostgreSQL有3种日志,分别是pg_log(数据库运行日志)、pg_xlog(WAL 日志,即重做日志)、pg_clog(事务提交日志,记录的是事务的元数据)。1、要查看PostgreSQL日志文件,首先需要有日志文件,所以我们先将日志记录功能打开。
一、postgresql怎么查询日志
PostgreSQL有3种日志,分别是pg_log(数据库运行日志)、pg_xlog(WAL 日志,即重做日志)、pg_clog(事务提交日志,记录的是事务的元数据)。
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
延伸阅读:
二、实例(instance)是什么
一组Oracle 后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。也许实例不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例和数据库划清界线。