開(kāi)始之守護(hù)進(jìn)程
postgresql啟動(dòng)時(shí)晨继,首先啟動(dòng)/usr/local/pgsql/bin/postgres功能進(jìn)程喂柒,守護(hù)進(jìn)程還監(jiān)聽(tīng)連接請(qǐng)求车胡,接收客戶端的連接請(qǐng)求砚嘴,并為客戶端生成服務(wù)器進(jìn)程
共享緩沖區(qū)
共享緩沖區(qū)主要用來(lái)提高數(shù)據(jù)庫(kù)操作的效率及可擴(kuò)展性仗处,此刻后端程序不再?gòu)奈募凶x取及寫(xiě)入文件眯勾,而是從處理緩沖區(qū)或RAM中讀取及寫(xiě)入.緩沖區(qū)的容量分配是由postgresql.conf中的參數(shù)shared_buffer設(shè)置,數(shù)據(jù)庫(kù)啟動(dòng)時(shí)會(huì)根據(jù)參數(shù)設(shè)置分配固定大小的共享內(nèi)存
- 緩沖區(qū)緩沖檢查可借助擴(kuò)展程序
pg_buffercache
- 創(chuàng)建緩存命令 :
create extension pg_buffercache
檢查點(diǎn)
檢查點(diǎn)主要用來(lái)幫助數(shù)據(jù)庫(kù)面臨崩潰時(shí),崩潰恢復(fù)程序通過(guò)檢測(cè)最新的檢查點(diǎn)(在預(yù)寫(xiě)日志文件中WAL)記錄來(lái)確定它應(yīng)該從哪里開(kāi)始REDO操作
檢查點(diǎn)設(shè)定參數(shù)
- checkpoint_segments : 即WAL區(qū)段婆誓,每個(gè)WAL區(qū)段是16MB吃环,若3個(gè)16MB的WAL區(qū)段填充完成則一個(gè)新的檢查點(diǎn)就應(yīng)該出現(xiàn),默認(rèn)值為3洋幻。
- checkpoint_timeout : 一個(gè)超時(shí)值郁轻,可設(shè)置為秒(默認(rèn)值)分鐘或小時(shí)。
- checkpoint_completion_target : 緩解檢查點(diǎn)頻繁出現(xiàn)導(dǎo)致的I/O峰值
附注
當(dāng)出現(xiàn)如下情況時(shí)文留,出現(xiàn)檢查點(diǎn)
- checkpoint_timeout 周期失效
- WAL的checkpoint_segments數(shù)量已填滿
檢查點(diǎn)參數(shù)設(shè)置參考
WAL恢復(fù)
是WAL概念的主要用途好唯,此處我們指那些已被提交上來(lái)但并未找到數(shù)據(jù)文件的恢復(fù)事務(wù)
部分參數(shù)釋義
參數(shù) | 作用 |
---|---|
wal_level | 1.針對(duì)系統(tǒng)崩潰的恢復(fù) 2. 基于時(shí)間點(diǎn)恢復(fù)進(jìn)行存檔 3.創(chuàng)建一個(gè)備用數(shù)據(jù)庫(kù) |
wal_buffer | 為WAL緩沖區(qū)預(yù)留的共享內(nèi)存量 |
wal_write_delay | WAL更新間隔標(biāo)識(shí),默認(rèn)為200毫秒 |
bgwriter_lru_maxpages | 指定每一次迭代中進(jìn)程寫(xiě)入緩沖區(qū)的最大數(shù)量 |
autovacuum | 自動(dòng)啟動(dòng)清空操作 默認(rèn)值為 ON
|
日志進(jìn)程
日志標(biāo)簽嚴(yán)重等級(jí)
嚴(yán)重性 | 用途 |
---|---|
INFO | 提供了用戶隱式請(qǐng)求的信息 如 : VACUUM VERBOSE 的輸出 |
NOTICE | 提供了可能對(duì)用戶有益的信息 如 : 關(guān)于長(zhǎng)標(biāo)識(shí)符截?cái)嗤ㄖ?/td> |
WARNING | 提供了可能問(wèn)題的警告 如 : 事務(wù)塊之外的COMMIT |
ERROR | 匯報(bào)導(dǎo)致當(dāng)前命令中止的錯(cuò)誤 |
LOG | 匯報(bào)管理員感興趣的信息 如 : 檢查點(diǎn)活動(dòng) |
FATAL | 匯報(bào)導(dǎo)致當(dāng)前會(huì)話中止的錯(cuò)誤 |
PANIC | 匯報(bào)導(dǎo)致所有數(shù)據(jù)庫(kù)對(duì)話中止的錯(cuò)誤 |
log_line_frefix
可以以非常詳細(xì)的自定義格式登錄,可使用日志文件對(duì)數(shù)據(jù)庫(kù)發(fā)生的事項(xiàng)進(jìn)行分析
部分前綴選項(xiàng)釋義
選項(xiàng) | 描述 | 選項(xiàng) | 描述 |
---|---|---|---|
%a | 應(yīng)用名稱 | %m | 有毫秒的時(shí)間戳 |
%u | 用戶名 | %i | 命令標(biāo)簽 |
%d | 數(shù)據(jù)庫(kù)名稱 | %e | SQL狀態(tài)錯(cuò)誤碼 |
%r | 遠(yuǎn)程主機(jī)與端口 | %c | 會(huì)話ID |
%h | 遠(yuǎn)程主機(jī) | %l | 改會(huì)話的日志行數(shù) |
%p | 進(jìn)程ID | %s | 會(huì)話起始時(shí)間戳 |
%t | 無(wú)毫秒的時(shí)間戳 |