国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > PostgreSQL > 正文

PostgreSQL7.0手冊(cè)-管理員手冊(cè)-27. 運(yùn)行時(shí)環(huán)境

2019-09-08 23:33:53
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
第二十七章. 運(yùn)行時(shí)環(huán)境
內(nèi)容 
在 Unix 里使用 Postgres 
啟動(dòng) postmaster 
使用 pg_options 
本章描述 Postgres 和操作系統(tǒng)之間的關(guān)系. 
在 Unix 里使用 Postgres
所有直接從 Unix shell 運(yùn)行的 Postgres 命令都放在 “.../bin”.將這個(gè)目錄包含在你的搜索目錄中可以讓你執(zhí)行命令更容易些. 
每個(gè)節(jié)點(diǎn)都有一套系統(tǒng)表.包括一個(gè)載有所有有效的 Postgres 用戶(hù)記錄的表(pg_user)。這些記錄聲明一套 Postgres 權(quán)限,比如說(shuō)是否擁有Postgres 超級(jí)用戶(hù)權(quán)限,創(chuàng)建/刪除數(shù)據(jù)庫(kù)的權(quán)限,以及更新數(shù)據(jù)庫(kù)系統(tǒng)表的權(quán)限等.除非一個(gè) Unix 用戶(hù)在這個(gè)表里面有合適的記錄,否則他在 Postgres 里不能做任何事情.另外,更詳細(xì)的系統(tǒng)表的信息可以通過(guò)查詢(xún)對(duì)應(yīng)的表的方式來(lái)獲得。


--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

啟動(dòng) postmaster
除非 postmaster 進(jìn)程在運(yùn)行,否則我們無(wú)法對(duì)數(shù)據(jù)庫(kù)進(jìn)行任何操作.作為節(jié)點(diǎn)管理員,在運(yùn)行 postmaster 之前有許多事情要注意.這些都已經(jīng)在本手冊(cè)安裝和配置章節(jié)中討論過(guò).不過(guò),如果 Postgres 是完全按照安裝指導(dǎo)中描述的那樣安裝的話(huà),下面的簡(jiǎn)單命令就是你運(yùn)行 postmaster 所要執(zhí)行的: 
% postmaster
postmaster 有時(shí)會(huì)打印出對(duì)排除問(wèn)題很有幫助的信息.如果你希望看到 postmaster 輸出的調(diào)試信息,你可以帶 -d 選項(xiàng)運(yùn)行之然后把輸出重定向到一個(gè)日志文件中: 
% postmaster -d > pm.log 2>&1 &
如果你不希望看到這些信息,可以鍵入 
% postmaster -S
postmaster 就會(huì)"安靜"下來(lái).在這個(gè)例子里不需要有一個(gè)與號(hào)("&")在行尾,因?yàn)楫?dāng)聲明 -S 后 postmaster 自動(dòng)于終端分離.

--------------------------------------------------------------------------------
--------------------------------------------------------------------------------

使用 pg_options
注意:由 Massimo Dal Zotto 提供
可選的參數(shù)文件 data/pg_options 包含被后端用于控制跟蹤信息和其他可調(diào)節(jié)參數(shù)的運(yùn)行時(shí)選項(xiàng).當(dāng)后端收到一個(gè) SIGHUP 信號(hào)后會(huì)重新讀取這個(gè)文件的信息.這就讓我們可以動(dòng)態(tài)更改 Postgres 的運(yùn)行時(shí)參數(shù)而不需要重新啟動(dòng)它.在這個(gè)文件中聲明的選項(xiàng)可能是被追蹤包使用的調(diào)試標(biāo)志(backend/utils/misc/trace.c)或者是后端用于控制其特性的一些數(shù)字參數(shù). 
在后端啟動(dòng)的時(shí)候所有 pg_options 都初始化為零.新的或者被改變了的選項(xiàng)將被所有新啟動(dòng)的后端讀取.要令選項(xiàng)的更改對(duì)所有正在運(yùn)行的后端都起做用,我們要向 postmaster 發(fā)送一個(gè) SIGHUP 信號(hào).該信號(hào)將自動(dòng)發(fā)送給所有后端.我們也可以通過(guò)給指定的后端發(fā)送 SIGHUP 信號(hào)的方法來(lái)讓更改只對(duì)某個(gè)后端生效. 

pg_options 同樣可以使用 Postgres 的 -T 開(kāi)關(guān)來(lái)聲明: 

postgres options -T "verbose=2,query,hostlookup-"
這樣,用于打印錯(cuò)誤和調(diào)試信息的函數(shù)就可以利用 syslog(2) 功能了.向標(biāo)準(zhǔn)輸出(stdout)或標(biāo)準(zhǔn)錯(cuò)誤(stderr)打印的信息是帶有時(shí)標(biāo)和后端進(jìn)程號(hào)前綴的字串: 
#timestamp          #pid    #message
980127.17:52:14.173 [29271] StartTransactionCommand
980127.17:52:14.174 [29271] ProcessUtility: drop table t;
980127.17:52:14.186 [29271] SIIncNumEntries: table is 70% full
980127.17:52:14.186 [29286] Async_NotifyHandler
980127.17:52:14.186 [29286] Waking up sleeping backend process
980127.19:52:14.292 [29286] Async_NotifyFrontEnd
980127.19:52:14.413 [29286] Async_NotifyFrontEnd done
980127.19:52:14.466 [29286] Async_NotifyHandler done
這種格式改善了日志的可讀性并且讓人們可以弄明白某后端何時(shí)在做何事.同樣這也讓我們很容易寫(xiě)出簡(jiǎn)單的監(jiān)控日志的 awk 或 perl 腳本來(lái)跟蹤數(shù)據(jù)庫(kù)錯(cuò)誤或問(wèn)題,或者計(jì)算交易時(shí)間統(tǒng)計(jì)數(shù)據(jù). 
向 syslog (系統(tǒng)日志)打印的信息使用了日志工具 LOG_LOCAL0.syslog的使用可以由 syslog 的 pg_option 控制.不幸的是,許多函數(shù)調(diào)用直接用 printf() 把它們的信息輸出到標(biāo)準(zhǔn)輸出(stdout)或標(biāo)準(zhǔn)錯(cuò)誤(stderr)中去了,這樣的輸出不能重定向到 syslog 而且也不會(huì)有時(shí)標(biāo).我們的建議是所有對(duì)printf的調(diào)用都用宏 PRINTF 代替,所有向標(biāo)準(zhǔn)錯(cuò)誤(stderr)的輸出都用 EPRINTF 替換,這樣我們就可以將所有輸出都控制在統(tǒng)一的方法下. 

pg_options 文件的格式如下: 

# comment
option=integer_value  # set value for option
option                # set option = 1
option+               # set option = 1
option-               # set option = 0
注意 keyword 可以是定義在 backend/utils/misc/trace.c 里的選項(xiàng)名的縮寫(xiě). 
  
例 27-1. pg_options 文件 
例如,我的 pg_options 文件包含下面的值: 

verbose=2
query
hostlookup
showportnumber
可識(shí)別的選項(xiàng)
目前已經(jīng)定義的選項(xiàng)是: 
  
all 
全局追蹤標(biāo)志,允許的值是: 
0 
追蹤信息(一個(gè)一個(gè))分別打開(kāi) 
1 
打開(kāi)所有追蹤信息 
-1 
關(guān)閉所有追蹤信息 
verbose 
冗長(zhǎng)標(biāo)志.允許的值是: 
0 
沒(méi)有信息,這是缺省值. 
1 
打印消息信息. 
2 
打印更多消息信息. 
query 
查詢(xún)追蹤標(biāo)志,允許的值是: 
0 
不打印查詢(xún). 
1 
在一行內(nèi)打印壓縮了的查詢(xún). 
4 
打印全部查詢(xún). 
plan 
打印查詢(xún)規(guī)劃. 
parse 
打印分析器輸出. 
rewritten 
打印重寫(xiě)了的查詢(xún). 
pretty_plan 
漂亮地(?)打印查詢(xún)規(guī)劃. 
pretty_parse 
漂亮地(?)打印分析器輸出. 
pretty_rewritten 
漂亮地(?)打印重寫(xiě)了的查詢(xún). 
parserstats 
打印分析器統(tǒng)計(jì). 
plannerstats 
打印規(guī)劃器統(tǒng)計(jì)信息. 
executorstats 
打印執(zhí)行器統(tǒng)計(jì)信息. 
shortlocks 
當(dāng)前沒(méi)有使用但將來(lái)需要使用的特性. 
locks 
追蹤鎖. 
userlocks 
追蹤用戶(hù)鎖. 
spinlocks 
追蹤旋轉(zhuǎn)鎖. 
notify 
追蹤通知函數(shù). 
malloc 
目前未用. 
palloc 
目前未用. 
lock_debug_oidmin 
鎖追蹤的最小的關(guān)系對(duì)象標(biāo)識(shí)(oid). 
lock_debug_relid 
oid,如果為非零,由鎖追蹤的關(guān)系. 
lock_read_priority 
目前未用. 
deadlock_timeout 
死鎖檢測(cè)計(jì)時(shí)器. 
syslog 
syslog 標(biāo)志.允許的值是: 
0 
消息輸出到標(biāo)準(zhǔn)輸出/標(biāo)準(zhǔn)錯(cuò)誤(stdout/stderr). 
1 
消息輸出到標(biāo)準(zhǔn)輸出/標(biāo)準(zhǔn)錯(cuò)誤 (stdout/stderr)和 syslog. 
2 
消息只輸出到 syslog. 
hostlookup 
打開(kāi)在 ps_status 里的主機(jī)名查找. 
showportnumber 
在 ps_status 里顯示端口號(hào). 
nofsync 
  
  
  
  

以每用戶(hù)為單位關(guān)閉 fsync.


--------------------------------------------------------------------------------
發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 普定县| 饶平县| 新沂市| 临猗县| 广德县| 出国| 砀山县| 扬中市| 麻栗坡县| 闽清县| 上林县| 霞浦县| 广河县| 延长县| 福贡县| 八宿县| 班玛县| 渝北区| 仲巴县| 万安县| 盖州市| 澄城县| 罗定市| 邮箱| 阿勒泰市| 城固县| 迁安市| 瓮安县| 卫辉市| 阳高县| 湖南省| 泸水县| 扶风县| 静安区| 新乡县| 宜君县| 兴安盟| 丰顺县| 滕州市| 江达县| 双桥区|