報(bào)錯(cuò)截圖:
pg_basebackup: could not get write-ahead log end position from server: ERROR: could not open file "./.postgresql.conf.swn": Permission denied
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括靈壽網(wǎng)站建設(shè)、靈壽網(wǎng)站制作、靈壽網(wǎng)頁(yè)制作以及靈壽網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,靈壽網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到靈壽省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
一、環(huán)境準(zhǔn)備:【生產(chǎn)環(huán)境】
1、
Master PG host IP :172.17.16.16 host name:hkzbxdb1
Standby PG host IP:172.17.16.18 host name:hkzbxdb2
2、PG Cluster 理想環(huán)境是版本一致,所以主備庫(kù)版本如下:
3、停止Firewalls防火墻【主備機(jī)】、初始化PG數(shù)據(jù)庫(kù)【主備機(jī)】、iptables規(guī)則配置【假如你用到/主備】;
4、Master host 配置:pg_hba.conf 和postgresql.conf;創(chuàng)建replication role賬戶repl;
文件路徑:/var/lib/pgsql/11/data/pg_hba.conf
配置pg_hba.conf
keepalives 參數(shù)非必須,主要是監(jiān)控TCP連接狀態(tài)使用;
/var/lib/pgsql/11/data/postgresql.conf
配置流復(fù)制功能WAL歸檔這部分可以不用配置,當(dāng)然也可以采用"流復(fù)制+WAL連續(xù)歸檔"的容災(zāi)方案;
這幾個(gè)replication參數(shù)比較重要,可以根據(jù)自己的需求調(diào)整參數(shù)值,更多詳細(xì)信息建議參考官網(wǎng)文檔https://www.postgresql.org/docs/11/warm-standby.html:
備注:"WAL知識(shí)點(diǎn)參考信息,來(lái)自PG官網(wǎng)"
至此,環(huán)境準(zhǔn)備完畢。
二、理論準(zhǔn)備
啟動(dòng)流復(fù)制
在Streaming Replication中,三種進(jìn)程協(xié)同工作。甲walsender主服務(wù)器上的過(guò)程發(fā)送WAL數(shù)據(jù)到備用服務(wù)器; 然后,備用服務(wù)器上的walreceiver和啟動(dòng)進(jìn)程接收并重放這些數(shù)據(jù)。walsender和walreceiver使用單個(gè)TCP連接進(jìn)行通信。
流復(fù)制的啟動(dòng)順序圖:
(1)啟動(dòng)主服務(wù)器和備用服務(wù)器。
(2)備用服務(wù)器啟動(dòng)啟動(dòng)過(guò)程。
(3)備用服務(wù)器啟動(dòng)walreceiver進(jìn)程。
(4)walreceiver向主服務(wù)器發(fā)送連接請(qǐng)求。如果主服務(wù)器未運(yùn)行,則walreceiver會(huì)定期發(fā)送這些請(qǐng)求。
(5)當(dāng)主服務(wù)器收到連接請(qǐng)求時(shí),它啟動(dòng)walsender進(jìn)程并在walsender和walreceiver之間建立TCP連接。
(6)walreceiver發(fā)送備用數(shù)據(jù)庫(kù)集群的最新LSN。一般而言,這一階段被稱為信息技術(shù)領(lǐng)域的握手。
(7)如果備用的最新LSN小于主要的最新LSN(備用的LSN <主要的LSN),則walsender將WAL數(shù)據(jù)從前LSN發(fā)送到后一個(gè)LSN。這樣的WAL數(shù)據(jù)由存儲(chǔ)在主要的pg_xlog子目錄(版本10或更高版本,pg_wal子目錄)中的WAL段提供。然后,備用服務(wù)器重放接收的WAL數(shù)據(jù)。在此階段,備用數(shù)據(jù)庫(kù)趕上主數(shù)據(jù)庫(kù),因此稱為追趕。
(8)流復(fù)制開(kāi)始起作用。
每個(gè)walsender進(jìn)程保持適合連接的walreceiver或任何應(yīng)用程序的工作階段的狀態(tài)(請(qǐng)注意,它不是連接到walsender的walreceiver或應(yīng)用程序的狀態(tài)。)以下是它的可能狀態(tài):
啟動(dòng) - 從啟動(dòng)walsender到握手結(jié)束。見(jiàn)圖。(5) - (6)。
追趕 - 在追趕階段。見(jiàn)圖(7)。
流 - 雖然流復(fù)制正在運(yùn)行。見(jiàn)圖(8)。
backup - 在為pg_basebackup實(shí)用程序等備份工具發(fā)送整個(gè)數(shù)據(jù)庫(kù)集群的文件期間。
該pg_stat_replication視圖顯示所有正在運(yùn)行的walsenders的狀態(tài)。一個(gè)例子如下所示:
三、"ERROR: could not open file "./.postgresql.conf.swn": Permission denied",解決思路;
1、根據(jù)報(bào)錯(cuò)提示查找文件及路徑;
# locate .postgresql.conf.swn
/var/lib/pgsql/11/data/.postgresql.conf.swn
2、根據(jù)搜索結(jié)果,查看/var/lib/pgsql/11/data/l路徑下的所有文件【含隱藏】及權(quán)限;
# ls -la /var/lib/pgsql/11/data/
正確的權(quán)限如下截圖,可以對(duì)比看,如果不匹配修改對(duì)應(yīng)紅色框內(nèi)的權(quán)限
3、權(quán)限修改命令
# chmod -R 700 /var/lib/pgsql/11/data 變更data及子目錄文件權(quán)限為RWX
# chgrp -R postgres /var/lib/pgsql/11/data 變更data及子目錄文件所屬組為postgres
# chown -R postgres /var/lib/pgsql/11/data 變更data及子目錄文件所有者為postgres
4、以上是針對(duì)MAster Host修改;需要注意的是修改完畢之后記得重啟PG服務(wù)器或系統(tǒng);
5、在Standby Host主機(jī)上登錄postgres賬戶,然后執(zhí)行pg_basebackup命令從主庫(kù)異步復(fù)制PG數(shù)據(jù)資料;
#su - postgres 從ROOT或其他賬戶切換到postgres賬戶
# pg_basebackup -D $PGDATA -Fp -Xs -v -P -h 172.17.16.16 -p 5432 -U repl
"備注:A.至此,正常的情況是,你可以在/var/lib/pgsql/11目錄下看到data文件變大,且data下的文件和主庫(kù)保持一致;
B.如果,你在執(zhí)行pg_basebackup 命令后,提示:“/var/lib/pgsql/11/data”存在且不為空,那么你需要執(zhí)行C,然后重新執(zhí)行pg_basebackup命令.
C.執(zhí)行,備份原data并新建data,Command:
#mv /var/lib/pgsql/11/data /var/lib/pgsql/11/data_back
#mkdir /var/lib/pgsql/11/data
"
6、備庫(kù)重啟PG服務(wù),然后對(duì)比主從庫(kù)信息會(huì)發(fā)現(xiàn)此時(shí)兩邊數(shù)據(jù)庫(kù)信息是一致的,"問(wèn)題解決".
名稱欄目:Postgres11.4pg_basebackupP
文章鏈接:http://aaarwkj.com/article24/jeipce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)公司、定制開(kāi)發(fā)、域名注冊(cè)、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)