一、postgresql怎么查詢?nèi)罩?/strong>
PostgreSQL有3種日志,分別是pg_log(數(shù)據(jù)庫運(yùn)行日志)、pg_xlog(WAL 日志,即重做日志)、pg_clog(事務(wù)提交日志,記錄的是事務(wù)的元數(shù)據(jù))。
1、要查看PostgreSQL日志文件,首先需要有日志文件,所以我們先將日志記錄功能打開;
pg_log默認(rèn)是關(guān)閉的,需要設(shè)置參數(shù)啟用此日志。pg_xlog和pg_clog都是強(qiáng)制打開的,無法關(guān)閉。
啟用pg_log并配置日志參數(shù):
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
#?記錄執(zhí)行慢的SQL
log_min_duration_statement?=?60
log_checkpoints?=?on
log_connections?=?on
log_disconnections?=?on
log_duration?=?on
log_line_prefix?=?‘%m’
#?監(jiān)控數(shù)據(jù)庫中長時間的鎖
log_lock_waits?=?on
#?記錄DDL操作
log_statement?=?‘ddl’
2、然后需要重啟PostgreSQL,即可在$PGDATA/pg_log/ 下看到新生成的日志。
pg_ctl?restart?-m?fast
3、PostgreSQL的日志文件目錄如下:
日志的目錄可以通過參數(shù)? log_directory 來設(shè)置,下面是我的參數(shù)設(shè)置。
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 后臺進(jìn)程/線程以及一個共享內(nèi)存區(qū),這些內(nèi)存由同一個計算機(jī)上運(yùn)行的線程/進(jìn)程所共享。這里可以維護(hù)易失的、非持久性內(nèi)容(有些可以刷新輸出到磁盤)。就算沒有磁盤存儲,數(shù)據(jù)庫實例也能存在。也許實例不能算是世界上最有用的事物,不過你完全可以把它想成是最有用的事物,這有助于對實例和數(shù)據(jù)庫劃清界線。