1. 程式人生 > >PostgreSQL 主從非同步流複製配置(二)

PostgreSQL 主從非同步流複製配置(二)

Stream Replication

master防火牆配置

master :10.10.56.16 
slave  :10.10.56.17
slave  :10.10.56.18
slave  :10.10.56.19 

master 上搭建PostgeSQL 環境基於配置(一),具體請參考 搭建PostgreSQL 安裝環境(一)

安裝成功後,在master的客戶端認證檔案pg_hba.conf 後新增如下:

[email protected]:~> vim /pgdata/9.6/poc/data/pg_hba.conf 
# TYPE   DATABASE   USER         ADDRESS               METHOD
host replication repl 10.10.56.17/32 md5 host replication repl 10.10.56.18/32 md5 host replication repl 10.10.56.19/32 md5

上述表示:允許地址為17、18、19的使用者repl 通過MD5密碼驗證 從主機進行復制。

修改配置檔案後,若PostgeSQL 服務在執行 則reload,沒有執行則 start 使之生效:

[email protected]-db1
:~> /opt/pgsql-9.6/bin/pg_ctl -D /pgdata/9.6/poc/data/ reload server signaled [email protected]-db1:~>

master配置成功後,slave 安裝基本環境同 master ,區別在於 slave 從庫不需要進行 initdb 初始化資料庫

slave複製資料

[email protected]-db2:/pgdata/9.6/poc> /opt/pgsql-9.6/bin/pg_basebackup -h 10.10.56.16 -U repl -W -Fp -Pv -Xs -R -D
/pgdata/9.6/poc/data/ Password: pg_basebackup: initiating base backup, waiting for checkpoint to complete pg_basebackup: checkpoint completed transaction log start point: 0/2000028 on timeline 1 pg_basebackup: starting background WAL receiver 29956/29956 kB (100%), 1/1 tablespace transaction log end point: 0/20000F8 pg_basebackup: waiting for background process to finish streaming ... pg_basebackup: base backup completed
-h 表示主機地址          -W 表示需要密碼        -Fp 表示普通檔案格式輸出 
-Xs 表示通過流複製抓取備份日誌     -R 表示在輸出目錄預設建立一個recovery.conf檔案
-u 表示使用者     -D 指定資料庫存放的目錄

上述表示把資料從主庫master同步到slave 上

檢視slave的recovery配置檔案

[email protected]-db2:/pgdata/9.6/poc/data> cat recovery.conf
standby_mode = 'on'
primary_conninfo = 'user=repl password=123456 host=10.10.56.16 port=5432 sslmode=disable sslcompression=1'

啟動slave

[email protected]-db2:/home/postgres> /opt/pgsql-9.6/bin/pg_ctl -D /pgdata/9.6/poc/data/ start
server starting
[email protected]-db2:/home/postgres> FATAL:  data directory "/pgdata/9.6/poc/data" has group or world access
DETAIL:  Permissions should be u=rwx (0700).

解決方法:

postgres@clw-db2:/pgdata/9.6/poc> chmod 0700 data

啟動PG server

[email protected]-db2:/pgdata/9.6/poc> /opt/pgsql-9.6/bin/pg_ctl -D /pgdata/9.6/poc/data/ start
server starting
[email protected]-db2:/pgdata/9.6/poc> 

看到日誌輸出以下內容說明啟動成功:

[email protected]:/pgdata/9.6/poc> tail -f /pgdata/9.6/poc/data/pg_log/postgresql-2018-05-03_172139.csv
2018-05-03 17:21:39.838 CST,,,30454,,5aead4a2.76f6,2,,2018-05-03 17:21:38 CST,,0,LOG,00000,"database system is ready to accept read only connections",,,,,,,,,""

檢視主從是否已連線

[email protected]:~> /opt/pgsql-9.6/bin/psql -p 5432 -U postgres pocdb
psql (9.6.8)
Type "help" for help.

pocdb=# \x
Expanded display is on.
pocdb=#                                                 
pocdb=# select * from pg_stat_replication;
-[ RECORD 1 ]----+------------------------------
pid              | 21072
usesysid         | 16385
usename          | repl
application_name | walreceiver
client_addr      | 10.10.56.17
client_hostname  | 
client_port      | 43200
backend_start    | 2018-05-03 17:21:39.842751+08
backend_xmin     | 
state            | streaming
sent_location    | 0/3000220
write_location   | 0/3000220
flush_location   | 0/3000220
replay_location  | 0/3000220
sync_priority    | 0
sync_state       | async

相關推薦

PostgreSQL 主從非同步複製配置

Stream Replication master防火牆配置 master :10.10.56.16 slave :10.10.56.17 slave :10.10.56.18 slave :10.10.56.19 在 master 上搭

PostgreSQL 主從非同步、同步複製配置

同步、非同步多從庫複製 在master上連線pocdb 資料庫 ,基於配置二的節點狀態 pocdb=# SELECT client_addr,application_name,sync_state FROM pg_stat_replication; c

Linux下mysql主從複製配置CentOS7

主從複製需要注意: 1、資料庫版本必須一致 2、資料庫名稱必須一致   例如db888 3、配置主資料庫開啟二進位制日誌 4、主資料庫、從資料庫必須具有一個唯一的server-id 配置主從資料庫複製: 一:操作主庫 1、修改主庫的配置檔案     vi /e

postgresql從入門到菜鳥服務端配置和psql連線

上一篇文章我們已經成功在rehel上安裝了postgrel資料庫。 關於window環境下的安裝,可以直接下載install檔案,進行雙擊安裝,或者通過編譯原始碼的方式安裝。 本篇文章將介紹postgresql資料的基本配置,以及客戶端與伺服器端的連線。 先看伺服器端 當我們通過

第一次使用Android Studio時你應該知道的一切配置:新建一個屬於自己的工程並安裝Genymotion模擬器

人性 pro net 參考 json irb 一個地方 vid 調試 【聲明】 歡迎轉載,但請保留文章原始出處→_→ 生命壹號:http://www.cnblogs.com/smyhvae/ 文章來源:http://www.cnblogs.com/smyhvae/p/439

Pycharm配置

編輯 plm 分享 期望 代碼檢查 warning 編寫 tegra activity 1、主題 這部分教程主要介紹如何創建一個Python工程並使其具有Pycharm的代碼風格。你將會看到Pycharm使你的源碼變得非常簡潔美觀,帶有合適的縮進、空格等

Nagios監控基本配置

time 信息 名稱 systemctl disk linu cpu sage 說明 一、配置Nagios服務nagios服務運行是在主配置文件nagios.cfg ,在配置文件中調用監控插件,運維人員可以設置監控插件的監控閥值(警告值 錯誤值); nagios服務的插

路由器簡單配置-

nvram 加載 enca 自動 rabl mic 都是 start 手動 電腦中arp -a查看arp表 電腦中arp -s IPadd MAC進行arp綁定 電腦中arp -d清除arp緩存 路由器arp -a查看arp表 路由器arp IPadd MAC進行arp綁定

Git配置Windows安裝Git,並配置Centos為遠程倉庫

Git1、為Centos系統創建Git用戶 useradd -d /home/git git #創建git用戶 passwd git #修改密碼 2、打開Centos系統RAS認證 vim /etc/ssh/sshd_config 打開以下註釋,修

SpringMVC基礎配置

ads 註意 ram 客戶 處理 ping 聯合 erp 就是 上一張:SpringMVC環境搭建(一) 今天我們來說說SpringMVC的基礎配置。目前越來越多的主流框架都支持註解,同時我們無敵的Spring也支持基於註解的"零配置"。 註解相比XML的優勢:它可以充

Kafka集群安裝和配置

nohup 解壓 host download end 啟動 num rc.local ntp (一)、環境介紹1、服務器的相關設置:1、kafka1:172.20.67.522、kafka2:172.20.67.563、kafka3:172.20.67.57 2、zooke

Linux的網路配置

一、虛擬機器的網路連通 1.建實驗環境  主機端開啟主機端路由功能,調整主機端路由配置。 [[email protected] ~]$ su - root ##切換到真機的超級使用者 Password: Last login:

SQL追蹤器phpgjx2.0版本配置

第五步:重啟MySQL服務 驗證MySQL日誌列印檔案新建成功,開啟在第四步中配置的日誌資料夾,在H:\mysql5_7_21目錄下查詢是否有mysql_bz.log檔案,如果有證明修改資料庫服務成功。 第六步:配置phpgjx的配置檔案config.php,新增如下程式碼

IO學習筆記之BufferedWriter與BufferedReader及例項Demo

在之前的學習筆記(http://blog.csdn.net/megustas_jjc/article/details/72853059)中,FileWriter與FileReader的Demo使用的中轉資料buf實際就是緩衝區,是由我們自己建立的。 緩衝區可以提高效率,Java對緩衝區進行了封裝,封裝成了物

華為路由器OSPF特殊區域配置

OSPF區域型別:骨幹區域,非骨幹區域; 骨幹區域為:0區域; 非骨幹區域分為:標準區域、特殊區域; 特殊區域分為:stub區域、tatally stub區域、nssa區域、totally nssa區域。 本文主要為大家介紹OSPF四種特殊區域配置命令及鏈路狀態分析,實驗拓撲如下:

12 非同步多執行緒Thread,ThreadPool,Task

一.Thread 1.Thread 是framework1.0時候就存在的,可以用TreadStart來啟動多執行緒。 Stopwatch watch = new Stopwatch();//計時器 watch.Start(); Console.WriteLine($"*

Node.js之伺服器配置

通過不同的路徑,如/list,返回不同的檔案 var express = require('express'); var path = require('path'); //建立服務 var app = express();//例項化物件 app.use('/lis

flowable工作進階

Flowable spring boot 進階(二) 資料庫表介紹 Flowable的資料庫名稱都以ACT_開頭。第二部分是表的用例的雙字元標識。此用例也將大致匹配服務API。 ACT_RE_ *:RE代表repository。具有此字首的表包含靜態資訊,例如流程定義和流程

9.27 IO學習總結

在學習IO流之前我們今天先學習了遞迴。 遞迴 遞迴:就是在方法定義中呼叫方法本身的現象。 在使用遞迴時,必須有一個明確的遞迴結束條件,稱為遞迴出口。 下面舉個例子: 1.用遞迴來實現斐波那契額數列,如1,1,2,3,5,8,13…,輸出前20項的和。 publi

Java整合Sentry之配置

10、Event Sampling Sentry可以配置為使用sample.rate選項對事件進行取樣: sample.rate=0.75 此選項採用0.0到1.0之間的數字,表示允許通過伺服器的事件百分比(從0%到100%)。預設情況下,所有事件都將傳送到Sentry