久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么搭建postgresql

145次閱讀
沒有評論

共計 2000 個字符,預計需要花費 5 分鐘才能閱讀完成。

這篇文章主要講解了“怎么搭建 postgresql-pg 簡易異步流復制”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著丸趣 TV 小編的思路慢慢深入,一起來研究和學習“怎么搭建 postgresql-pg 簡易異步流復制”吧!

流復制是 PostgreSQL 9.0 之后才提供的新的傳遞 WAL 日志的方法。通過流復制,備庫不斷的從主庫同步相應的數據,并在備庫 apply 每個 WAL record,這里的流復制每次傳輸單位是 WAL 日志的 record。就如
oracle 的 dataguard 技術一樣,pg 的流復制也是按照同步模式的不同,分為同步流復制和異步流復制。同步流復制雖然能在主庫壞掉時確保數據的一致,但是當網絡或者備庫有問題的時候,會導致主庫事務 hang 住。異步流復制則沒有這樣的缺點,不會影響生產庫的性能,但是在主庫壞掉的時候,可能會丟掉一小部分數據。

pg 的流復制安裝非常的簡單,如下配置完成后,就可以做到,如下版本是 pg11 在 rhel7 的配置,注意,需要提前在兩邊服務器上建好同一個版本的 pg 服務:

01 主庫操作

1.1 創建復制用戶作為主從同步使用

postgres=# create role repl login replication encrypted password 123456

CREATE ROLE

1.2 修改 pg_hba.conf 文件

主庫

host allall192.168.0.0/24md5

host replication repl192.168.0.52/24md5

第一行 #允許 XX 這個從服務器連接到主服務器

第二行 #允許使用 replica 用戶來復制,第二個字段必須要填 repl(上一步添加的用戶)

#psql

psql select pg_reload_conf();# 生效

1.3 修改 postgresql.conf

listen_addresses= * #這個一般安裝服務器之后都會進行配置,檢查下

wal_level=replica #默認 replica,不動

wal_keep_segments=256# 設置流復制保留的最多的 xlog 數目

# 重啟 pg 服務生效。

# 只有 listen_address 改變需要重啟,否則 select pg_reload_conf() 即可。

pg_ctl stop –D $PGDATA

pg_ctl start –D $PGDATA

1.4 在從庫測試連接是否成功

psql -h 192.168.0.51-p 5432-U postgres

02 備庫操作

2.1 停止 pg 服務,清空 data 目錄

[postgres@apple-standby ~]$ echo $PGDATA

/data/pg11.5/data

[postgres@apple-standby data]$ rm -rf /data/pg11.5/data

2.2 從主節點拷貝數據到從節點

$ pg_basebackup -h 192.168.0.51-U repl -D /data/pg11.5/data -X stream -P

could not identify current directory: No such file or directory

Password:

45238/45238 kB (100%),1/1 tablespace

2.3 配置 recovery.conf

cd $PGHOME(軟件安裝目錄)

cp share/recovery.conf.sample $PGDATA/recovery.conf

vi recovery.conf

standby_mode = on

primary_conninfo= host=192.168.0.51 port=5432 user=repl password=123456

recovery_target_timeline= latest

###

primary_conninfo  主服務器的信息以及連接的用戶

standby_mode = on # 說明該節點是從服務器

recovery_target_timeline  #指定恢復到特定時間軸。默認設置是沿著執行基本備份時的當前時間線恢復。將此設置為 latest 將恢復到存檔中找到的最新時間軸

2.4 啟動服務

pg_ctl start  -D $PGDATA

在主庫上查詢,如下,可以看到,sync_state,async 就表示異步流復制。

postgres=# select pid,usename,application_name,client_addr,state,sync_state  from  pg_stat_replication;

如上,就簡單的搭好了一個流復制數據庫!

感謝各位的閱讀,以上就是“怎么搭建 postgresql-pg 簡易異步流復制”的內容了,經過本文的學習后,相信大家對怎么搭建 postgresql-pg 簡易異步流復制這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關知識點的文章,歡迎關注!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-27發表,共計2000字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 遂溪县| 教育| 会同县| 荥阳市| 牡丹江市| 乌恰县| 台中县| 河津市| 会理县| 邻水| 安康市| 瓮安县| 资兴市| 六盘水市| 璧山县| 岳西县| 兴安县| 巴彦淖尔市| 阿鲁科尔沁旗| 南漳县| 邮箱| 郸城县| 东乡县| 廊坊市| 长白| 邢台市| 藁城市| 延川县| 离岛区| 孟州市| 深泽县| 边坝县| 襄樊市| 凌源市| 荃湾区| 宾阳县| 绍兴市| 油尖旺区| 鹰潭市| 山西省| 上蔡县|