PostgreSQL 10.7 主从安装

硬件环境

云服务商:华为云

Linux: CentOS7.1

工具:Xshell Xftp

IP:114.115.251.168

Port: 5432 5433

postgresql二进制安装包从https://www.enterprisedb.com/download-postgresql-binaries

一.Master数据库安装配置

1创建PG数据库的用户postgres

2使用root用户给postgres用户相关文件夹赋权并切换至postgres用户

chown -R postgres:postgres /home

3解压PostgreSQL

4创建PGM应用目录,data为数据,log为日志目录,文件夹赋权777

5初始化数据库

./initdb -E utf8 -D /home/postgresql_master/PGM/data

6Master数据库库参数配置

首先修改pg_hba.conf

在最下边添加两行代码,意为允许远程连接

host    replication      all      0.0.0.0/0    trust

host    all                   all     0.0.0.0/0     trust

接下来修改postgresql.conf

listen_addresses = ‘*’   #监听所有ip

port = 5432    #设置IP端口

archive_mode = on   #开启归档模式

archive_command = ‘cp %p /var/lib/postgresql/10/main/%f’   #归档命令

wal_level = hot_standby    #热备模式

max_wal_senders = 2   #最多有2个流复制连接

wal_sender_timeout = 60s    #流复制超时时间

max_connections = 100   #最大连接时间,必须要小于从库的配置

7启动Master数据库

./pg_ctl –D /home/postgresql_master/PGM/data -l /home/postgresql_master/PGM/log/logfile start

8创建热备用户并赋权

create role repl login replication encrypted password 'repl';

grant all privileges on database postgres to repl;

二.StandBy数据库安装配置(先重复Master数据库前5个步骤,注意data文件夹权限必须为700)

1生成基础备份

./pg_basebackup -h 114.115.251.168 -p 5432 -U repl -F p -P -R -D /home/postgresql_standby/PGS/data -l postgresbackup20190402

pg_basebackup支持两种全量备份的方式,

1.以fetch的方式,先备份数据在备份日志

2.以stream的方式,并行的备份数据和日志

pg_basebackup对于全量备份的数据和日志,提供了串行备份和并行备份的方式。fetch模式也就是串行备份需要保证在备份数据的过程中,备份开始时刻的日志需要一直保存下来, 也就说pg的wal_keep_segments需要足够大去保存日志文件,如果备份数据期间,日志开始时刻的日志已经被移除,那么备份就会失败。而stream模式,也就是并行备份过程中wal_max_sender必须保证不小于2。 而stream模式不支持,将数据和日志以流的方式输出到标准输出。

2配置参数

配置recovery.conf

standby_mode = on    # 说明该节点是从服务器

primary_conninfo = 'host=114.115.251.168 port=5432 user=repl password=repl'  # 主服务器的信息以及连接的用户

recovery_target_timeline = 'latest'

配置postgresql.conf

Port = 5433

wal_level = hot_standby    #热备模式

max_connections = 300   #最大连接时间

hot_standby = on  #说明这台机器不仅用于数据归档,还可以用于数据查询

max_standby_streaming_delay = 30s #流备份的最大延迟时间

wal_receiver_status_interval = 10s  #向主机汇报本机状态的间隔时间

hot_standby_feedback = on #r出现错误复制,向主机反馈

3启动从库

4创建从库用户

三.主从验证

主库查询系统信息正常,接下来测试下数据即可

PostgreSQL 10.7 linux 主从配置的更多相关文章

  1. CentOS 7 安装、配置、使用 PostgreSQL 10 安装及基础配置

    官网安装方法:https://www.postgresql.org/download/linux/redhat/ 卸载的话使用 yum remove 相应的安装 Install the reposit ...

  2. linux篇-linux 主从配置

    1准备两台服务器 一台是192.168.118.128 一台是192.168.118.129 2主服务器配置 192.168.118.128 修改my.cnf文件 server-id=1 log-bi ...

  3. postgresql主从配置

    master:10.0.1.114 slaver:10.0.1.116 一.yum安装https://blog.csdn.net/weixin_41048363/article/details/803 ...

  4. CentOS7 PostgreSQL 主从配置( 二)

    同步流复制配置PostgreSql的流复制是异步的,缺点是Standby上的数据落后于主库上的数据,如果使用Hot Standby做读写分离,就会存在数据一致性的问题.PostgreSql9.1版本后 ...

  5. postgresql pgsql最新版安装指南及数据存储路径更改及主从配置

    postgresql pgsql最新版安装指南及数据存储路径更改及主从配置 安装指南 首先在apt的list添加你当前系统版本对应的apt列表 目前官网有16.04,14.04,12.04 分别对应下 ...

  6. 集群之mysql主从配置(windows和linux版)

    起因 由于网站进一步开发运行的需求,要求主机7*24小时运行正常,同时要求能够防止数据库灾难.考虑到后期的开发程度和业务量,准备向高可用系统进行改变,同时通过负载均衡提高网络性能.于是第一步就考虑到了 ...

  7. linux系统mysql主从配置

    一.原理 mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把mast ...

  8. 自学Zabbix3.10.2.1 linux如何配置使用sendEmail发送邮件

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix3.10.2.1 linux如何配置使用sendEmail发送邮件 sendEma ...

  9. Linux学习笔记(10)linux网络管理与配置之一——主机名与IP地址,DNS解析与本地hosts解析(1-4)

    Linux学习笔记(10)linux网络管理与配置之一——主机名与IP地址,DNS解析与本地hosts解析 大纲目录 0.常用linux基础网络命令 1.配置主机名 2.配置网卡信息与IP地址 3.配 ...

随机推荐

  1. ES的基本用法

    ES的基本概念 1> 集群和节点 一个es集群是由一个或多和es节点组成的集合 每一个集群都有一个名字, 如之前的wali 每个节点都有自己的名字, 如之前的master, slave1, sl ...

  2. C++11 左值、右值、右值引用

    左值.右值 在C++11中所有的值必属于左值.右值两者之一,右值又可以细分为纯右值.将亡值.在C++11中可以取地址的.有名字的就是左值,反之,不能取地址的.没有名字的就是右值(将亡值或纯右值).举个 ...

  3. JDK源码分析-String、StringBuilder、StringBuffer

    String类的申明 public final class String implements java.io.Serializable, Comparable<String>, Char ...

  4. Scrapy 1.4 文档 03 Scrapy 教程

    在本教程中,我们假设您已经安装了Scrapy.如果没有,请参阅安装指南. 我们将要抓取 quotes.toscrape.com,一个列出著名作家的名言(quote)的网站. 本教程将引导您完成以下任务 ...

  5. localStorage和sessionStorage区别(包括同源的定义)

    localStorage和sessionStorage一样都是用来存储客户端临时信息的对象. 他们均只能存储字符串类型的对象(虽然规范中可以存储其他原生类型的对象,但是目前为止没有浏览器对其进行实现) ...

  6. struts2(三)---struts2中的服务端数据验证框架validate

    struts2为我们提供了一个很好的数据验证框架–validate,该框架可以很方便的实现服务端的数据验证. ActionSupport类提供了一个validate()方法,当我们需要在某一个acti ...

  7. 51单片机GPIO口模拟串口通信

    51单片机GPIO口模拟串口通信 标签: bytetimer终端存储 2011-08-03 11:06 6387人阅读 评论(2) 收藏 举报 本文章已收录于:   分类: 深入C语言(20) 作者同 ...

  8. SpringCloud实战8-Bus消息总线

    好了现在我们接着上一篇的随笔,继续来讲.上一篇我们讲到,我们如果要去更新所有微服务的配置,在不重启的情况下去更新配置,只能依靠spring cloud config了,但是,是我们要一个服务一个服务的 ...

  9. 【BZOJ 4031】: [HEOI2015]小Z的房间

    题目大意: 给一个n×m的网格,“.”表示可联通,求该网格可构成的生成树个数在1E9的剩余系中的结果.(n,m<=9) 题解: 忘了删注释WA了两遍…… 直接建图+MartrixTree定理即可 ...

  10. VMware workstation的基础使用

    1. VMware workstation虚拟化平台简介2. VMware workstation提供网络资源3. VMware workstation提供存储资源4. VMware workstat ...