postgresql windows下主从搭建,备份机制

虚拟主机2台

MASTER(这个看实际情况来修改),后面简称M

SLAVE(这个看实际情况来修改),后面简称S

确定ip之后,请相互ping一下,看看是否可以ping通,如果不能ping通,很有可能是防火墙的问题,请关闭防火墙。

Step1:安装PG数据库

slave端可以只装数据库,不初始化数据库(安装好就不用动它了,要记得账号密码),因为后面需要把data文件家替换掉。

程序位置:C:\Program Files\PostgreSQL\ ,位置没有具体的要求,可以随改。

Step2:创建流复制用户

master端执行:

CREATE USER repuser replication LOGIN CONNECTION LIMIT 10  ENCRYPTED PASSWORD 'OLAB2019!';

LIMIT 10可以进行修改,有几个从库就改成几

Step3:配置Master端的访问文件pg_hba.conf(安装数据库时设置的data路径),我的路径为:

host replication repuser 从库ip/16 md5

Step4:配置MASTER端配置文件 C:\Program Files\PostgreSQL\9.4\data\postgresql.conf

配置的时候为了方便可以放到这个文件后面,因为这些配置默认都是被注释的。所有本质上都是唯一的,不用担心其他地方配置过了

archive_mode = on

archive_command = 'cp "%p" "/opt/PG-12/archivedir"'

max_wal_senders = 10

max_replication_slots = 10

wal_level = replica

wal_keep_segments = 512

  注:max_wal_senders是Slave库的节点数,有多少个slave库就设多少,

       wal_level是write ahead log参数值,设置流复制务必将此值更新成hot_standby

       wal_keep_segments默认值是16,是PG_XLOG下的日志文件数相关参数

Step6:修改Slave端配置信息

停止备库服务器上的服务。

进入你的postgresql的安装目录,使用pg_basebackup.exe进行基础备份,路径目录为你data的目录下,备份方式:pg_basebackup –h 主库ip –p 端口号 –U创建的角色 –W –Fp –Xs –Pv –R –D 备份的路径信息

运行输入口令密码即可(或可使用小写的w)

如下显示备份完成

 

 重新启动备库服务器服务开始测试

在主机上运行select * from pg_stat_replication,查看流备份的节点

 

完成后后期也可升级做都写分离,数据库集群搭建等。

 

posted @ 2021-08-27 11:01  一九九三  阅读(576)  评论(0)    收藏  举报