postgresql主从备份_基于windows平台的postgresql主从数据库流备份配置

基于windows平台的postgresql主从数据库流备份配置

因工作需要,需要搞pg数据库的主从备份,领导给了个方向使用流备份,于是开始朝着这个方向进发。

鸣谢大佬A_ccelerator的博客

一、配置主从库

1.环境准备

对于 pg 的主从库配置,建议是使用两台机器。本文档基于两台 windows 环境编写。

主:

操作系统:windows10

数据库版本:postgresql-10.4

ip:192.168.61.132

从:

操作系统:windows10

数据库版本:postgresql-10.4

ip:192.168.61.130

2.配置主库

(1)配置 pg_hba.conf 文件

在 pg 的安装目录下,找到 pg_hba.conf 文件

目录示例:C:\Program Files\PostgreSQL\10\data

在文件末尾增加一行代码,目的是增加名为 replica 的用户,以进行数据库 同步的操作。填写的 ip 为从数据库的地址。

host replication replica 192.168.61.130/32 md5

(2)创建 replica 相关权限

可以在 pgadmin 中直接运行 sql 语句:

CREATE ROLE replica login replication encrypted password 'replica'

(3)配置 postgresql.conf 文件

在 pg 的安装目录下,找到 postgresql.conf 文件,查找并修改如下配置(如 果前面有#,需要删除#字符):

wal_level = replica

max_wal_senders = 32

wal_keep_segments = 256

wal_sender_timeout = 60s

参数简要说明:

wal_level //设置流复制模式至少设置为

replica max_wal_senders //这个设置了可以最多有几个流复制连接,差不多有几个从,就设置几个

wal_keep_segments //pg_wal 目录下保留 WAL 日志的个数,每个 WAL 文件默认 16M,为保 障从库能在应用归档落后时依旧能追上主库,此值建议设置较大一点。

wal_sender_timeout //设置流复制主机发送数据的超时时间

(4)启动主库

启动 pg 服务 postgresql-x64-10

3.配置从库

(1)配置 data

首先将主数据库的 data 文件夹内容通过 pg_basebackup 备份过来:

pg_basebackup -F p --progress -D "C:\Program Files\PostgreSQL\10\data2" -h 192.168.61.132 -p 5432 -U replica --password

输入密码 replica 等待备份结束

然后关闭 pg 服务,打开 PostgreSQL\10\的目录可以看到多出了 data2 出来, 此时备份并删除 data 文件夹,修改 data2 文件夹名为 data。

(2)配置 recovery.conf 文件

复制 PostgreSQL\10\share 下的 recovery.conf.sample 到 data 下,重命名 为 recovery.conf。

修改以下配置(如果前面有#,需要删除#字符):

standby_mode = on primary_conninfo = 'host=192.168.61.132 port=5432 user=replica password=replica' recovery_target_timeline = 'latest'

(3)配置 postgresql.conf 文件

在 pg 的安装目录下,找到 postgresql.conf 文件,查找并修改如下配置(如 果前面有#,需要删除#字符):

hot_standby = on

max_standby_streaming_delay = 30s

wal_receiver_status_interval = 1s

hot_standby_feedback = on

参数简要说明:

hot_standby //此参数控制在恢复归档期间是否支持只读操作,设置为 ON 后从库为只读模式。

max_standby_streaming_delay //数据流备份的最大延迟时间

wal_receiver_status_interval //多久向主报告一次从的状态,当然从每次数据复制都会向主 报告状态,这里只是设置最长的间隔时间。

hot_standby_feedback //如果有错误的数据复制,是否向主进行反馈

(4)启动从库

启动 pg 服务 postgresql-x64-10

4.确认是否成功

在主数据库的 pgadmin 中可以执行:

select client_addr,sync_state from pg_stat_replication;

假如出现如下的查询结果,便说明已经开始同步了

29a5990b7f43d403344d01c34e6ff8c2.png

此时在主库上进行增删改操作,打开从库查看是否同步

二、主从切换

如果主库挂了,需要紧急使用从库来作为主库,以便服务能尽快恢复,操作方法如下:

(1)改一下从库的recovery.conf文件名。

(2)主库上新增recovery.conf文件,按照上文的从库配置方式配置一遍。重启主库,此时主库变更为从库

修改软件程序链接的数据库地址即可

三、问题记录及解决方案

1.从库配置data之后启动不了

自己看日志(windows系统日志 + pg日志)

(1)删除data文件夹下的postmaster.pid。

(2)修改data文件夹权限,给所有用户权限。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/267471.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

msvcrt.lib和LIBCD.lib链接冲突

今天在移植一个开源代码到windows的VC6工程,编译时出现了这些奇怪的LINK错误。 msvcrt.lib(MSVCRT.dll) : error LNK2005: _toupper already defined in LIBCD.lib(toupper.obj)msvcrt.lib(MSVCRT.dll) : error LNK2005: _tolower already defined in LIBCD.lib(to…

jq获取最后一个子节点_如何选择jQuery中的最后一个子元素?

牧羊人nacy如果要选择最后一个子元素,并且需要具体说明元素类型,则可以使用选择器last-of-type这是一个例子:$("div p:last-of-type").css("border", "3px solid red");$("div span:last-of-type").…

面向对象 - 继承/组合 - 总结

面向对象 - 继承:1.继承: 类与类之间的关系 什么是什么的关系 eg:人是动物 狗是动物 功能: 解决代码重用问题, 创建新类的方式, 类: 可继承一个或多个父类: 父类 基类/超类 类 派生类/子类 类: 对象之间相似的特征 父类:…

巧妙的有css合并图片解决tab切换的背景图片

巧妙的有css合并图片解决tab切换的背景图片 有时候做tab切换的时候 会碰到下面的这种情况 我截个图过来看看 tab切换 打开页面时候 茶庄介绍 及鼠标移上去时候 是上面这样的效果 当鼠标移下来的时候 是下面这样的 茶庄介绍 就变成这样的背景 一刚开始做这样的 我就想到用j…

XUPT_STA2018(部分题解)

A - 一方通行和最大公约数I CodeForces - 664A 作为学园都市最强的lv5,一方通行必须解决一道数学题才能接触last order身上植入的病毒,请你帮他解决这个问题。给出两个整数a,b 求出[a,b]区间中所有整数的最大公约数。输入输入包括一行,一…

java mongodb drivers 2升级到3_JAVA从头开始一基础梳理(3-2)

本章为大家介绍类的特性。首先,第一个特性----封装。在这个类别中,属性id 与属性 color 是可以被外部直接访问和修改的,比如可以看到,事实上这样的内容是错误的,我们需要在定义属性值时需要加入验证等等操作&#xff0…

C 语言第6节课

我上课C语言的第6节的笔记 &#xff1a;C语言真的需要多做多练多理解&#xff0c;不然真的学不懂.记不住呀。第一题&#xff1a;睇图片解题。main(){int x,y;scanf("%d",&x);if(x<0)printf("y%d",0);if(x>0&&x<5)printf("y%d&qu…

activiti idea 请假流程_IDEA开发流程Activiti需要注意的一些坑

1、慎用IDEA2020最新版本IDEA2020最新版本迎来了重大升级&#xff0c;对java和spring有了更好更强大的开发支持&#xff0c;但是对于Activiti流程开发却不再支持&#xff0c;可能是因为actiBPM插件太老&#xff0c;或者IDEA2020对插件支持做了规范要求等等&#xff0c;请各位喜…

VIPCA无法运行

本文转自ITPUB上一兄弟总结&#xff0c;以备查询。 今天一早来&#xff0c;同事说他周末在安装 rac 出问题了&#xff0c;始终无法使用vipca 创建 vip资源 &#xff0c; 叫我帮忙看看。 他用的是 vmware server 2.0 搭建 虚拟 rac 。 一. 环境如下  OS: Red Hat Enterprise …

python加权最小二乘_【Python】统计科学之加权最小二乘法

首页专栏python文章详情0统计科学之加权最小二乘法张俊红发布于 今天 10:03今天这篇来讲讲加权最小二乘法(WLS)&#xff0c;加权最小二乘是在普通的最小二乘回归(OLS)的基础上进行改造的&#xff0c;主要是用来解决异方差问题的。OLS的常规形式如下&#xff1a;我们在前面讲过O…

删除电脑中的mysql数据库吗_【数据库】怎么彻底删除mysql服务?

彻底删除mysql服务的步骤&#xff1a;1、关闭mysql服务在cmd命令行输入以下命令net stop mysql或者 我的电脑右键->管理->服务&#xff0c;进入后手动关闭。2、删除MySQL服务在cmd中&#xff0c;输入sc delete mysql&#xff0c;删除服务。但是MYSQL服务只是显示禁用状态…

mysql主从配置 简书_Mysql主从配置,实现读写分离-Go语言中文社区

转载&#xff1a;https://www.cnblogs.com/alvin_xp/p/4162249.html大型网站为了软解大量的并发访问&#xff0c;除了在网站实现分布式负载均衡&#xff0c;远远不够。到了数据业务层、数据访问层&#xff0c;如果还是传统的数据结构&#xff0c;或者只是单单靠一台服务器扛&am…

continue 的用户及实例

continue 跳出本次循环&#xff0c;继续下一次循环 “break”是跳出整个循环 实例1&#xff1a; for i in range(10): if i <5: continue    #这里条件是小于5&#xff0c;满足条件的就跳出了本次循环&#xff0c;不在执行print&#xff0c;所以最终打印的是5…

mysql报错注入实战_MySQL手工注入实战

实战记录&#xff0c;日本某站注入点 and 语句测试and11 返回正常&#xff0c;and2跳回首页&#xff0c;可能过滤了用 ’ 测试返回错误页面判断为注入点order by语句查询字段数测试字段数为9and 12 UNION SELECT 1,2,3,4,5,6,7,8,9报错联合查询语句&#xff0c;查询显示位2、3为…

20个简约风格网站设计作品欣赏

这篇文章收集了20个简洁清爽的网站设计作品案例&#xff0c;设计师们能够通过这些优秀的网页设计作品获得灵感&#xff0c;进而设计出更精美&#xff0c;更具有创意的网站作品&#xff0c;一起欣赏。vnsagaPure – Minimal WordPress themeAssemblydeladeeus design studioHocu…

python 股票自动交易从零开始_Python股票自动交易从零开始

课程目录1.Python股票自动交易从零开始~第一集~简介(Av24528809,P1).mp42.Python股票自动交易从零开始~第二集~安装工具包(Av24528809,P2).mp43.Python股票自动交易从零开始~第二集番外~配置Mac工作环境(Av24528809,P3).mp44.Python股票自动交易从零开始~第三集~获得股票列表-A…

python 银行工作_Python:银行系统实战(一)

最近突然抽筋想做一下大学时候做过的银行系统实战~代码就发在这里啦~学弟学妹们请查收~不过是python版本的&#xff0c;你们也用不上。。。两个py文件&#xff0c;一个是后台系统处理的&#xff0c;一个是总控py文件如下&#xff1a;view.py 内容如下&#xff1a;import timecl…

深入剖析LinkedList:揭秘底层原理

文章目录 一、 概述LinkedList1.1 LinkedList简介1.2 LinkedList的优点和缺点 二、 LinkedList数据结构分析2.1 Node节点结构体解析2.2 LinkedList实现了双向链表的原因2.3 LinkedList如何实现了链表的基本操作&#xff08;增删改查&#xff09;2.4 LinkedList的遍历方式 三、 …

mysql+server+80_Windows Server 2019 IIS10.0+PHP(FastCGI)+MySQL环境搭建教程

准备篇一、环境说明&#xff1a;操作系统&#xff1a;Windows Server 2019PHP版本&#xff1a;php 7.3.11MySQL版本&#xff1a;MySQL 8.0.18.0二、相关软件下载&#xff1a;1、PHP下载地址&#xff1a;https://windows.php.net/downloads/releases/php-7.3.11-nts-Win32-VC15-…

SharePoint Server和Office 365之间的混合模式集成概述

正如您可能已经知道的那样&#xff0c;云中的Microsoft Office 365和SharePoint Server 2013/2016内部部署可以通过多种方式协同工作。这些通常被称为混合模式&#xff0c;因为它们将功能集成到SharePoint Online和SharePoint内部部署中。 以下Microsoft提供了下对照表&#xf…