W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
pg_standby用于支持創(chuàng)建一個(gè)“溫備”數(shù)據(jù)庫(kù)服務(wù)器。它被設(shè)計(jì)為一個(gè)可以隨時(shí)投入生產(chǎn)的程序,以及一個(gè)可定制的模板供你進(jìn)行特定的修改。
pg_standby被設(shè)計(jì)成一個(gè)等待著的restore_command
,它被用來把一次標(biāo)準(zhǔn)的歸檔恢復(fù)變成一次溫備操作。還需要一些其他的配置,所有這些配置都在主服務(wù)器手冊(cè)中有相應(yīng)的描述(見第 26.2 節(jié))。
要配置一臺(tái)后備服務(wù)器去使用pg_standby,可以把下面的內(nèi)容放在postgresql.conf
配置文件中:
restore_command = 'pg_standby archiveDir
%f %p %r'
其中archiveDir
是 WAL 段文件應(yīng)該被存儲(chǔ)的目錄。
如果指定了restartwalfile
(通常用%r
宏指定),那么所有在邏輯上位于這個(gè)文件之前的 WAL 文件都將被從archivelocation
中移除。這使需要被保留的文件數(shù)最小化,與此同時(shí)能夠保持崩潰重啟的能力。如果archivelocation
對(duì)于這個(gè)特定后備服務(wù)器是一個(gè)瞬態(tài)區(qū)域,使用這個(gè)參數(shù)是合適的,但當(dāng)
archivelocation
是一個(gè)長(zhǎng)期 WAL 歸檔區(qū)域時(shí)則不是合適的。
pg_standby假定archivelocation
是一個(gè)擁有服務(wù)器的用戶可讀的目錄。如果指定了restartwalfile
(或者-k
),archivelocation
目錄必須也是可寫的。
當(dāng)主服務(wù)器失效時(shí),有兩種方式轉(zhuǎn)移到一個(gè)“溫備”數(shù)據(jù)庫(kù)服務(wù)器:
在智能失效備援中,服務(wù)器在應(yīng)用歸檔中可用的所有 WAL 文件之后被提升。即便后備服務(wù)器落后于主服務(wù)器,這也會(huì)導(dǎo)致零數(shù)據(jù)丟失,但是如果有很多未應(yīng)用的 WAL,在后備服務(wù)器準(zhǔn)備好之前就需要比較長(zhǎng)的時(shí)間。要觸發(fā)一次智能失效備援,創(chuàng)建一個(gè)包含單詞smart
的觸發(fā)文件,或者只創(chuàng)建一個(gè)空文件。
在快速失效備援中,服務(wù)器被立即提升。歸檔中任何還未被應(yīng)用的 WAL 文件將被忽略,并且這些文件中的所有事務(wù)都會(huì)丟失。要觸發(fā)一次快速失效備援,創(chuàng)建一個(gè)觸發(fā)文件并且把單詞fast
寫在其中。pg_standby也能被配置為在一段定義好的區(qū)間內(nèi)沒有新 WAL 文件出現(xiàn)時(shí)自動(dòng)執(zhí)行一次快速失效備援。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: