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