乱码乱a∨中文字幕,在线免费激情视频,亚洲欧美久久夜夜潮,国产在线网址

  1. <sub id="hjl7n"></sub>

    1. <sub id="hjl7n"></sub>

      <legend id="hjl7n"></legend>

      當(dāng)前位置:首頁 >  站長 >  數(shù)據(jù)庫 >  正文

      CentOS PostgreSQL 12 主從復(fù)制(主從切換)操作

       2021-05-27 17:00  來源: 腳本之家   我來投稿 撤稿糾錯

        阿里云優(yōu)惠券 先領(lǐng)券再下單

      主從復(fù)制

      1. 基于文件的日志傳送

      創(chuàng)建一個高可用性(HA)集群配置可采用連續(xù)歸檔,集群中主服務(wù)器工作在連續(xù)歸檔模式下,備服務(wù)器工作在連續(xù)恢復(fù)模式下(1臺或多臺可隨時接管主服務(wù)器),備持續(xù)從主服務(wù)器讀取WAL文件。

      連續(xù)歸檔不需要對數(shù)據(jù)庫表做任何改動,可有效降低管理開銷,對主服務(wù)器的性能影響也相對較低。

      直接從一個數(shù)據(jù)庫服務(wù)器移動WAL記錄到另一臺服務(wù)器被稱為日志傳送,PostgreSQL通過一次一文件(WAL段)的WAL記錄傳輸實現(xiàn)了基于文件的日志傳送。

      日志傳送所需的帶寬取根據(jù)主服務(wù)器的事務(wù)率而變化;

      日志傳送是異步的,即WAL記錄是在事務(wù)提交后才被傳送,那么在一個窗口期內(nèi)如果主服務(wù)器發(fā)生災(zāi)難性的失效則會導(dǎo)致數(shù)據(jù)丟失,還沒有被傳送的事務(wù)將會被丟失;

      數(shù)據(jù)丟失窗口可以通過使用參數(shù)archive_timeout進行限制,可以低至數(shù)秒,但同時會增加文件傳送所需的帶寬。

      2. 流復(fù)制

      PostgreSQL在9.x之后引入了主從的流復(fù)制機制,所謂流復(fù)制,就是備服務(wù)器通過tcp流從主服務(wù)器中同步相應(yīng)的數(shù)據(jù),主服務(wù)器在WAL記錄產(chǎn)生時即將它們以流式傳送給備服務(wù)器,而不必等到WAL文件被填充。

      默認(rèn)情況下流復(fù)制是異步的,這種情況下主服務(wù)器上提交一個事務(wù)與該變化在備服務(wù)器上變得可見之間客觀上存在短暫的延遲,但這種延遲相比基于文件的日志傳送方式依然要小得多,在備服務(wù)器的能力滿足負載的前提下延遲通常低于一秒;

      在流復(fù)制中,備服務(wù)器比使用基于文件的日志傳送具有更小的數(shù)據(jù)丟失窗口,不需要采用archive_timeout來縮減數(shù)據(jù)丟失窗口;

      將一個備服務(wù)器從基于文件日志傳送轉(zhuǎn)變成基于流復(fù)制的步驟是:把recovery.conf文件中的primary_conninfo設(shè)置指向主服務(wù)器;設(shè)置主服務(wù)器配置文件的listen_addresses參數(shù)與認(rèn)證文件即可。

      操作系統(tǒng): CentOS 7

      數(shù)據(jù)庫: PostgreSQL 12

      一、主庫配置

      1、創(chuàng)建具有流復(fù)制權(quán)限的用戶

      1CREATE ROLE replica login replication encrypted password 'replica的密碼';

      2、編輯pg_hba.conf

      # 新增或修改下列屬性設(shè)置
      # 監(jiān)聽所有IP
      listen_addresses = '*'
      # 開啟歸檔
      archive_mode = on
      #歸檔命令
      archive_command = 'test ! -f /var/lib/pgsql/12/data/pg_archive/%f && cp %p /var/lib/pgsql/12/data//pg_archive/%f'
      # 9.6開始沒有hot_standby(熱備模式)
      wal_level = replica
      #最多有2個流復(fù)制連接
      max_wal_senders = 2
      wal_keep_segments = 16
      #流復(fù)制超時時間
      wal_sender_timeout = 60s
      # 最大連接數(shù),據(jù)說從機需要大于或等于該值
      max_connections = 100

       

      3、重啟postgres

      1pg_ctl -D /var/lib/pgsql/12/data -l logfile restart

      二、從庫配置

      1、驗證在從庫是否可以訪問主節(jié)點

      1psql -h 10.20.2.195 -U postgres

      2、停止從庫postgres服務(wù)

      1pg_ctl -D /var/lib/pgsql/12/data -l logfile stop

      3、清空從庫數(shù)據(jù)存儲文件夾

      1rm -rf /var/lib/pgsql/12/data/*

      4、從主服務(wù)器上copy數(shù)據(jù)到從服務(wù)器,這一步叫做“基礎(chǔ)備份”

      1pg_basebackup -h 主節(jié)點IP -p 5432 -U replica -Fp -Xs -Pv -R -D /var/lib/pgsql/12/data

      5、此時data目錄下會出現(xiàn)standby.signal文件,編輯此文件

      ## 加入
      standby_mode = 'on'

       

      6、修改postgresql.conf文件

      #從機信息和連接用戶
      primary_conninfo = 'host=主節(jié)點IP port=5432 user=replica password=replica用戶的密碼'
      #說明恢復(fù)到最新狀態(tài)
      recovery_target_timeline = latest
      #大于主節(jié)點,正式環(huán)境應(yīng)當(dāng)重新考慮此值的大小
      max_connections = 120
      #說明這臺機器不僅用于數(shù)據(jù)歸檔,還可以用于數(shù)據(jù)查詢
      hot_standby = on
      #流備份的最大延遲時間
      max_standby_streaming_delay = 30s
      #向主機匯報本機狀態(tài)的間隔時間
      wal_receiver_status_interval = 10s
      #r出現(xiàn)錯誤復(fù)制,向主機反饋
      hot_standby_feedback = on

       

      7、重啟從庫

      1pg_ctl -D /var/lib/pgsql/12/data -l logfile start

      三、驗證主從搭建是否成功

      1、連接主庫執(zhí)行

      1select client_addr,sync_state from pg_stat_replication;

      說明從服務(wù)器正在接收流,而且是異步流復(fù)制。主從配置成功

      四、主從切換

      主數(shù)據(jù)庫是讀寫的,備數(shù)據(jù)庫是只讀的。當(dāng)主數(shù)據(jù)庫宕機了,可以通過pg_controldata命令將從庫提升為主庫(將只讀模式變成讀寫),實現(xiàn)一些基本的HA應(yīng)用。也可以通過建立觸發(fā)文件提升為主庫,不推薦。命令快捷不容易出錯。

      1、查看/var/lib/pgsql/12/data復(fù)制狀態(tài)

      主庫

      從庫

      2、主庫故障,停止主庫服務(wù)

      3、提升從庫為主庫

      su - postgres -c "pg_ctl promote"
      server promoting

      4、查看從庫日志

      1cat /var/lib/pgsql/912/data/pg_log/postgresql-Mon.log

      文章來源:腳本之家

      來源地址:https://www.jb51.net/article/204839.htm

      申請創(chuàng)業(yè)報道,分享創(chuàng)業(yè)好點子。點擊此處,共同探討創(chuàng)業(yè)新機遇!

      相關(guān)文章

      熱門排行

      信息推薦