成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

PostgreSQL主從切換實例測試分析

這篇文章主要介紹“PostgreSQL主從切換實例測試分析”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“PostgreSQL主從切換實例測試分析”文章能幫助大家解決問題。

成都創(chuàng)新互聯(lián)公司是專業(yè)的興山網(wǎng)站建設公司,興山接單;提供成都網(wǎng)站制作、成都網(wǎng)站設計,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行興山網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

說明

在PostgreSQL(HOT-Standby)如主庫出現(xiàn)異常。備庫如何激活;來替換主庫工作。有下列2種方式

備庫在recovery.conf文件中有個配置項trigger_file。它是激活standby的觸發(fā)文件。當它存在;就會激活standby。
使用pg_ctl promote來激活。

演示

模擬演示主庫異常關機,將備庫切換為主庫,然后原主庫修復后切換為新的備庫繼續(xù)工作。

環(huán)境說明

主機名

IP地址

角色

數(shù)據(jù)目錄

master

192.168.20.133

主庫

/var/lib/pgsql/11/data

slave

192.168.20.134

備庫

/var/lib/pgsql/11/data

查看當前環(huán)境狀態(tài)

主庫

lei=# select * from pg_stat_replication;
-[ RECORD 1 ]----+------------------------------
pid              | 3274
usesysid         | 16774
usename          | repuser
application_name | walreceiver
client_addr      | 192.168.20.134
client_hostname  | slave
client_port      | 49896
backend_start    | 2019-05-30 02:40:58.253032-04
backend_xmin     |
state            | streaming
sent_lsn         | 0/180003C8
write_lsn        | 0/180003C8
flush_lsn        | 0/180003C8
replay_lsn       | 0/180003C8
write_lag        |
flush_lag        |
replay_lag       |
sync_priority    | 0
sync_state       | async

主庫關閉

[root@master data]# systemctl stop postgresql-11

激活備庫

作為新主庫運行,刪除數(shù)據(jù)庫lei中表test并創(chuàng)建表tt

[postgres@slave ~]$ pg_ctl -D /var/lib/pgsql/11/data/ promote
waiting for server to promote.... done
server promoted

刪除表test,創(chuàng)建表tt

[postgres@slave ~]$ psql lei;
psql (11.3)
Type "help" for help.

lei=# \dt
        List of relations
 Schema | Name | Type  |  Owner
--------+------+-------+----------
 public | lei  | table | postgres
 public | t    | table | postgres
 public | test | table | postgres
(3 rows)

lei=# drop table test;
DROP TABLE
lei=# create table tt(id int);
CREATE TABLE

手動切換幾次WAL日志

lei=# select pg_switch_wal();
 pg_switch_wal
---------------
 0/19019058
(1 row)

lei=# select pg_switch_wal();
 pg_switch_wal
---------------
 0/1A000078
(1 row)

lei=# select pg_switch_wal();
 pg_switch_wal
---------------
 0/1B000000
(1 row)

恢復原主庫

用pg_rewind命令同步新備庫

[postgres@master ~]$ pg_rewind --target-pgdata /var/lib/pgsql/11/data/ --source-server='host=slave port=5432 user=postgres dbname=postgres' -P
connected to server
servers diverged at WAL location 0/19000098 on timeline 3
rewinding from last common checkpoint at 0/19000028 on timeline 3
reading source file list
reading target file list
reading WAL in target
need to copy 133 MB (total source directory size is 165 MB)
136230/136230 kB (100%) copied
creating backup label and updating control file
syncing target data directory
Done!

修改recovery.conf文件
由于配置是同步過來的,所以需要修改一下配置primary_conninfo

[postgres@master ~]$ mv /var/lib/pgsql/11/data/recovery.done /var/lib/pgsql/11/data/recovery.conf
[postgres@master ~]$ vi /var/lib/pgsql/11/data/recovery.conf
primary_conninfo = 'host=slave port=5432 user=replica password=replica'

啟動新備庫

[root@master data]# systemctl start postgresql-11

查看數(shù)據(jù)是否同步過來
可以看到表test沒有了,多了tt表

postgres=# \c lei;
You are now connected to database "lei" as user "postgres".
lei=# \dt
        List of relations
 Schema | Name | Type  |  Owner
--------+------+-------+----------
 public | lei  | table | postgres
 public | t    | table | postgres
 public | tt   | table | postgres
(3 rows)

主庫查看進程狀態(tài)

lei=# \x
Expanded display is on.
lei=# select * from pg_stat_replication;
-[ RECORD 1 ]----+------------------------------
pid              | 8625
usesysid         | 16774
usename          | repuser
application_name | walreceiver
client_addr      | 192.168.20.133
client_hostname  | master
client_port      | 55306
backend_start    | 2019-05-30 03:26:14.645623-04
backend_xmin     |
state            | streaming
sent_lsn         | 0/1E0000D0
write_lsn        | 0/1E0000D0
flush_lsn        | 0/1E0000D0
replay_lsn       | 0/1E0000D0
write_lag        | 00:00:00.001552
flush_lag        | 00:00:00.002167
replay_lag       | 00:00:00.002169
sync_priority    | 0
sync_state       | async

如果有異常信息,請查看數(shù)據(jù)庫日志來定位問題,通常問題都是出現(xiàn)在幾個配置文件中。

  • pg_hba.conf

  • postgresql.conf

  • recovery.conf

至此PG主備就切換完成了!

關于“PostgreSQL主從切換實例測試分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識,可以關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會為大家更新不同的知識點。

本文題目:PostgreSQL主從切換實例測試分析
當前路徑:http://jinyejixie.com/article24/iisjce.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設計、網(wǎng)站內(nèi)鏈、App開發(fā)、云服務器、全網(wǎng)營銷推廣建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務器托管
汝阳县| 镇远县| 贵溪市| 阳曲县| 乐陵市| 定西市| 当涂县| 蒙山县| 蓬莱市| 彭泽县| 昌黎县| 毕节市| 湖北省| 怀宁县| 马尔康县| 咸丰县| 文成县| 贡觉县| 淄博市| 和硕县| 龙江县| 宜宾县| 皮山县| 临海市| 荥阳市| 宝鸡市| 大兴区| 泉州市| 仙桃市| 昆明市| 滁州市| 临泉县| 垣曲县| 甘德县| 凤冈县| 蒙自县| 汨罗市| 厦门市| 曲麻莱县| 弥勒县| 望奎县|