pgsql的同步须知
pgsql的同步模式是根据master上的日志来做的同步,有两种同步方式,参考
http://www.chinaxing.org/articles/Postgres/2012/12/14/2012-12-14-hight-availability-in-postgresql.html
pgsql的日志有一个自动回收的特性,如果某些日志发现不需要了,pgsql会重命名他们,并且用新日志覆盖;这带来一个问题,如果传送给备机的日志还没有全部传好,但是master上已经没有了,就会导致问题,所以,pgsql提供了一个接口,在postgresql.conf里面配置archive_command,这个用于在流复制的时候,pgsql会调用这里配置的命令,官方wiki的例子是cp到自定义的日志目录(你可以自己rsync到备机,如果用rsync,master上的wal_keep_segments也要设大一些,防止在rsync完成之前日志就没了),在备机上修改recovery.conf,里面配置restore_command,这个命令也会被调用
关于9.1新增的pg_basebackup命令,德哥建议用rsync,看http://blog.163.com/digoal@126/blog/static/16387704020133277305874
archive模式的例子,亲测通过
master的postgresql.conf
wal_level = hot_standby
wal_keep_segments =
max_wal_senders = archive_mode = on
#这里之所以mkdir,是自己在配置的时候死活提示没有权限,发现路径不过,自己mkdir以后,就很清楚的知道在哪里了
archive_command = 'mkdir -p pg_archive;cp -i %p pg_archive/%f'
slave的recovery.conf,暂时随便找个地方放好了
standby_mode = on
primary_conninfo = 'host=192.168.1.111 user=repuser password=123456'
restore_command = 'cp pg_archive/%f %p'
#某个时候会自动调用cleanup清理,默认pg_archivecleanup没有安装,需要apt-get install postgresql-contrib
archive_cleanup_command = 'pg_archivecleanup pg_archive %r'
slave上使用pg_basebackup来同步的测试
sudo service postgresql stop;sudo rm -rf /var/lib/postgresql/9.4/main;sudo -u postgres pg_basebackup -h 192.168.1.111 -D /var/lib/postgresql/9.4/main -U repuser -v -P;sudo cp /home/mmc/Desktop/recovery.conf /var/lib/postgresql/9.4/main/;sudo service postgresql start;
pgsql的同步须知的更多相关文章
- 生产环境搭建高可用Harbor(包括恢复演练实操)
生产环境搭建高可用Harbor(包括恢复演练实操) 前言 因资源成本问题,本Harbor高可用架构为最小开销方案,如果资源充足,可以将PG.Redis全部使用使用云厂商集群模式. 同时为了配置简单,并 ...
- debian8下pgsql的主备同步热切手动脚本
9以后,通过流复制直接做 主:192.168.1.111 从:192.168.1.222 需要在postgres帐号下先配置ssh互信,双机都配置 sh-keygen -t rsa ssh-copy- ...
- Mysql 和 Postgresql(PGSQL) 对比
Mysql 和 Postgresql(PGSQL) 对比 转载自:http://www.oschina.net/question/96003_13994 PostgreSQL与MySQL比较 MySQ ...
- .NET面试题解析(07)-多线程编程与线程同步
系列文章目录地址: .NET面试题解析(00)-开篇来谈谈面试 & 系列文章索引 关于线程的知识点其实是很多的,比如多线程编程.线程上下文.异步编程.线程同步构造.GUI的跨线程访问等等, ...
- .NET面试题解析(07)-多线程编程与线程同步 (转)
http://www.cnblogs.com/anding/p/5301754.html 系列文章目录地址: .NET面试题解析(00)-开篇来谈谈面试 & 系列文章索引 关于线程的知识点其实 ...
- PostgreSQL的 Slony-I 数据同步
原文--http://www.tuicool.com/articles/mMvARf 先谈谈slony的局限性: 1. DDL动作是不会被复制到: 2. 如果想使用slony来同步数据,表必须是带有主 ...
- inotify软件部署及实时同步
声明:博主使用的是CentOS6.9的系统 参考资料: https://github.com/rvoicilas/inotify-tools/wiki http://www.ibm.com/devel ...
- 一.hadoop入门须知
目录: 1.hadoop入门须知 2.hadoop环境搭建 3.hadoop mapreduce之WordCount例子 4.idea本地调试hadoop程序 5.hadoop 从mysql中读取数据 ...
- Slony-I同步复制部署
本次测试环境 IP 10.189.102.118 10.189.100.195 10.189.100.226 PGHOME /usr/local/pgsql /usr/local/pgsql /usr ...
随机推荐
- 使用IDEA2017创建java web +maven项目
1.首先,提前准备的东西:我使用的是IDEA2017,tomcat7,jdk1.:请将这些软件安装完成,环境变量配置完成,如何配置以及安装我就不复述了,百度上一堆一堆的,比我知道的详细多了. 2.下面 ...
- R软件中排序:sort(),rank(),order()
在R中,和排序相关的函数主要有三个:sort(),rank(),order(). sort(x)是对向量x进行排序,返回值排序后的数值向量.rank()是求秩的函数,它的返回值是这个向量中对应元 ...
- Validate Binary Search Tree,判断是否是二叉排序树
算法分析:两种方法,一种是中序遍历,然后得到一个序列,看序列是否是有序的.第二种,是用递归. 中序遍历: public class Solution { List<Integer> lis ...
- ERROR: cannot launch node of type [robot_pose_publisher/robot_pose_publisher]: robot_pose_publisher
sudo apt-get install ros-indigo-robot-pose-publisher
- Yarn资源调度过程详细
在MapReduce1.0中,我们都知道也存在和HDFS一样的单点故障问题,主要是JobTracker既负责资源管理,又负责任务分配. Yarn中可以添加多种计算框架,Hadoop,Spark,Map ...
- python json与字典对象互相转换
改文章转自:https://www.cnblogs.com/Lin-Yi/p/7640147.html 1 import requests 2 import json 3 ''' 4 json.loa ...
- UVA-1153 Keep the Customer Satisfied (贪心)
题目大意:有n件工作,做每件工作的消耗时间为s,截止时间为d,问最多能做完几件工作. 题目分析:贪心策略:优先做截止时间靠前的,一旦做不完当前工作,则从已经做过的工作中删去一件耗时最长的,用当前工作取 ...
- UVA-1572 Self-Assembly (图+拓扑排序)
题目大意:每条边上都有标号的正方形,两个正方形能通过相匹配的边连接起来,每种正方形都有无限多个.问能否无限延展下去. 题目分析:将边视为点,正方形视为边,建立无向图,利用拓扑排序判断是图否为DAG. ...
- restframework api(基础3CBV)
一 CBV源码流程 urls.py from django.conf.urls import url from django.contrib import admin from app01 impor ...
- 011PHP文件处理——文件处理 文件内容分页操作类
<?php /** * 文件内容分页操作类: */ //访问地址:http://basicphp.com/006file/011.php?&page=1 class StrPage { ...