postgreSQL12 主从

2023-10-29

1、基础环境

操作系统:CentOS 7.7
PostgreSQL:12.1
主节点:192.168.196.129 从节点:192.168.196.130

注意:低于pg12版本配置有所不同

2、部署主从

2.1 安装postgreSQL

主节点与从节点均安装postgreSQL,安装方法参考: Centos7 安装 postgreSQL

2.2 主节点

创建用户提供从节点复制流操作(postgres=#)
CREATE ROLE replica login replication encrypted password 'replica的密码';

编辑 pg_hba.conf 追加内容允许从服务器使用replica用户来复制

  • TYPE      DATABASE      USER            ADDRESS             METHOD
    host          replication       replica    192.168.196.130/32         md5

编辑 postgresql.conf 新增或修改下列属性设置

  • archive_mode = on     # 开启归档
  • archive_command = 'test ! -f /var/lib/pgsql/12/pg_archive/%f && cp %p /var/lib/pgsql/12/pg_archive/%f'
  • wal_level = replica
  • wal_keep_segments = 15
  • wal_sender_timeout = 60s
  • max_connections = 100     # 最大连接数,从机需要大于或等于该值

建立归档文件夹

  • mkdir /var/lib/pgsql/12/pg_archive

重启 postgres

  • systemctl restart postgresql-12

在从节点上验证是否可以访问主节点

  • psql -h 192.168.196.129 -U postgres

2.3 从节点

停止从节点的 postgres

  • systemctl stop postgresql-12

清空数据文件夹

  • rm -rf /var/lib/pgsql/12/data

从主节点拷贝数据 * 需要使用postgres用户进行操作否则启动从节点将会有问题

  • pg_basebackup -h 192.168.196.129 -D /var/lib/pgsql/12/data -p 5432 -U replica -Fp -Xs -Pv -R

确保用户正确:

在这里插入图片描述
在这里插入图片描述


如果用户不对执行如下代码:

chown -R postgres:postgres data

编辑 postgresql.conf 新增或修改下列属性设置

  • primary_conninfo = 'host=主节点IP port=5432 user=replica password=replica用户的密码'
  • recovery_target_timeline = latest
  • max_connections = 150     #大于主节点
  • hot_standby = on
  • max_standby_streaming_delay = 30s
  • wal_receiver_status_interval = 10s
  • hot_standby_feedback = on

重新启动从节点

  • systemctl restart postgresql-12

3、验证主从

登录主节点数据库执行如下命令

su postgres
psql
select client_addr,sync_state from pg_stat_replication;

结果如下:


在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

postgreSQL12 主从 的相关文章

随机推荐

  • 数据结构第二版,顺序栈的实现(c语言版)(初始化,入栈,出栈,取栈顶元素 ,遍历)

    include
  • 靶机4 DC-3(过程超详细)

    简介 DC靶场一共有9个 对于学习渗透测试人员 有很大的帮助 是非常不错的靶场 1 下载靶场 靶机名称 DC 3 包含1个flag 下载地址 DC 3 2 VulnHub 2 安装靶场 以DC 1为例 将文件解压 一压缩包形式进行下载 打开
  • 使用DBeaver连接达梦数据库

    下载地址 https dbeaver io download 0 选择类型ODBC 1 下载服务器安装目录的jdbc的jar包 2 编辑驱动设置 上传下载的DmJdbcDriver16 jar 并配置类名与URL模板及端口 3 测试连接 软
  • 浅谈ssm框架分层逻辑

    第一次接触ssm的时候感觉自己就是个无情的码字机器 完全跟着老师敲 每一行代码在干嘛都不是很理解 也经常看到这样的哀嚎 研究了一天后我也算是对这个框架有了一些浅薄的认识 这里我就完全用自己的理解来讲一下 如果说错欢迎指出 ssm Sprin
  • 线程同步和线程死锁

    线程同步 前面刚介绍了有关线程的基本认识 那我们先来思考一个小问题 两个线程之间有没有可能同时对一个资源发起访问呢 答案是肯定 那么在某些情况下这样的同时访问会引发一系列冲突 先来看一个简单的例子 创建两个线程 各自将count增加2500
  • powerdesigner在列表上显示comment的操作

    默认显示选项中没有comment的选项 那么我们就自定义一下 一 自定义comment选项 1 选择菜单 Model gt Extensions 2 插入一行 点击属性 3 鼠标右键点击 Profile 点击 Add Metaclasses
  • Java程序员的福音:Java项目教学之图书管理系统(含源代码)

    1 图书管理系统项目演示 图书管理系统分析 定义Book类 完成主界面和选择 完成查询所有图书 完成添加图书 完成删除图书 完成修改图书 使用Debug追踪调试 2 图书管理系统之标准Book类 我们发现每一本书都有书名和价格 定义一个Bo
  • 京东一面:MySQL 中的 distinct 和 group by 哪个效率更高?

    先说大致的结论 完整结论在文末 在语义相同 有索引的情况下group by和distinct都能使用索引 效率相同 在语义相同 无索引的情况下 distinct效率高于group by 原因是distinct 和 group by都会进行分
  • 【android12-linux-5.1】【ST芯片】【RK3588】【LSM6DSR】HAL源码分析

    一 环境介绍 RK3588主板搭载Android12操作系统 内核是Linux5 10 使用ST的六轴传感器LSM6DSR芯片 二 芯片介绍 LSM6DSR是一款加速度和角速度 陀螺仪 六轴传感器 还内置了一个温度传感器 该芯片可以选择I2
  • Angular4.0_路由守卫

    路由守卫 只有当用户已经登录并拥有某些权限时 才能进入某些路由 一个由多个表单组成的向导 例如注册流程 用户只有在当前路由的组件中填写了满足要求的信息才可以导航到下一个路由 当用户未执行保存操作 而试图离开当前导航时 提醒用户 CanAct
  • 华为机试HJ27 查找兄弟单词

    HJ27 查找兄弟单词 Python 题目 解题思路 代码 结果 题目 解题思路 1 多组输入 需要循环 2 首先定义一个兄弟单词的判断函数 相等则返回False 字符串中的字符排序后相同则为兄弟单词 3 循环所有待查字符串 统计所有兄弟单
  • Windows 远程桌面连接ubuntu及xrdp的一些小问题(远程桌面闪退、连接失败、tab补全功能,无菜单栏,error - problem connecting )

    1 远程桌面闪退 shell可以用的问题 1 需要在该用户目录创建一个 xsession touch xsession 2 里面写 xfce4 session 一句话就行 echo xfce4 session gt xsession 3 然
  • Leetcode刷题指南

    参考 https blog csdn net qq 39521554 article details 79160815 二 刷题方法 方法一 按照题目出现频率刷题 顺序参考文章最后的部分 方法二 标签法 按照网站给大家排列的不同tags 起
  • CentOS 8 下搭建 MySQL 一主一从

    需求 现有两台服务器192 168 137 129和192 168 137 130 在这两台服务器之间搭建一主一从MySQL 129为主 130为从 步骤 通过 CentOS 8通过二进制安装 MySQL 的步骤在 129 和 130 服务
  • Java基础-对象的内存分配与初始化(一定要明白的干货)

    参考 https www cnblogs com wxw7blog p 7349204 html 首先 什么是类的加载 类的加载由类加载器执行 该步骤将查找字节码 classpath指定目录 并从这些字节码中创建一个Class对象 Java
  • 3 css

    定位 为什么需要定位 1 某个元素可以自由的在一个盒子内移动位置 并且压住其他盒子 2 定位可以在让盒子自由在某个盒子内移动位置或者固定屏幕中某个位置 并且可以压住其他盒子 定位组成 将盒子定在某一位置 也就是来摆盒子 定位 定位模式 边偏
  • 如何将typora直接导入CSDN博客

    1 打开首页 2 点击头像 打开内容管理 3 点击左上角的发布中的文章4 点击工具栏中的导入5 找到之前用typora软件写的 保存在电脑的 md文件 6 打开就出现下面的预览页面 7 需要再编辑 点击右上角一个笔的图标 出现下面的编辑页面
  • 普罗米修斯搭建过程中遇到的坑

    1 使用后台命令启动不起来 换成使用前台命令启动 报错如下 2 err error loading config from root prometheus prometheus 2 17 0 prometheus yml couldn t
  • 运动目标检测、阴影检测及目标跟踪中用得到的标准测试视频下载(大量IBM提供视频)

    在搜测试视频时 找到andrew31在ilovematlab论坛中分享的网址链接 我转载于此 并做出详细介绍 方便大家以后使用 1 PETS2001的测试视频 http www filewatcher com b ftp ftp cs rd
  • postgreSQL12 主从

    Centos7 安装 postgreSQL 1 基础环境 2 部署主从 2 1 安装postgreSQL 2 2 主节点 2 3 从节点 3 验证主从 1 基础环境 操作系统 CentOS 7 7 PostgreSQL 12 1 主节点 1