Slony-I双机备份
测试环境:postgresql 9.3.5,slony-I2.2.3(application stack builder提供)以下参考网上教程亲自测试总结
-----------------------------------------------------------------------------------------------------------------------
主机:192.168.19.1 从机:192.168.19.2
(主从机)数据库名称:postgres,用户名:postgres,密码:admin
-----------------------------------------------------确保通讯----------------------------------------------------------
1.关闭主机和从机的防火墙(或者打通5432端口,允许通过防火墙)
2.修改主从机pg_hba.conf文件,这两步都是确保通讯正常
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 192.168.19.0/24 trust//new add line
-----------------------------------------------------配置从机----------------------------------------------------------
1.在从机上安装slony-I2.2.3
2.进入%PG%/bin 运行命令slon -regservice,注册slony-I服务,这时在任务管理器中的服务一列可见此项。
3.在从机上bin下加入配置文件slony_slave.conf,进入%PG%/bin 运行命令slon -addengine slony_slave.conf
#集群名称
cluster_name = Cluster #连接从服务器的信息
conn_info = 'dbname=postgres host=192.168.19.2 user=postgres password=admin'
4.在任务管理器中的服务一列开启slony-I服务。
-----------------------------------------------------配置主机----------------------------------------------------------
前四步与从机一样。
1.在主机上安装slony-I2.2.3
2.进入%PG%/bin 运行命令slon -regservice,注册slony-I服务,这时在任务管理器中的服务一列可见此项。
3.在主机上bin下加入配置文件slony_master.conf,进入%PG%/bin 运行命令slon -addengine slony_master.conf
#集群名称
cluster_name = Cluster #连接主服务器的信息
conn_info = 'dbname=postgres host=192.168.19.1 user=postgres password=admin'
4.在任务管理器中的服务一列开启slony-I服务。
5.在主机上bin下加入配置文件master.script,进入%PG%/bin 运行命令slonik master.script
cluster name = Cluster; #指明要定义的Cluster名 node 1 admin conninfo = 'dbname=postgres host=192.168.19.1 user=postgres password=admin';
node 2 admin conninfo = 'dbname=postgres host=192.168.19.2 user=postgres password=admin'; init cluster(id = 1, comment = 'Master Cluster'); #初始化Cluster,ID从1开始 store node ( id = 2, comment = 'Slave Node', event node=1); #定义从库节点 #定义路由路径
#主节点
store path ( server=1, client=2, conninfo = 'dbname=postgres host=192.168.19.1 user=postgres password=admin');
store path ( server=2, client=1, conninfo = 'dbname=postgres host=192.168.19.2 user=postgres password=admin');
#添加事件监听
#设置侦听事件和订阅方向,复制中角色,主节点是原始提供者,从节点是接受者
store listen ( origin = 1, provider = 1, receiver = 2 );
store listen ( origin = 2, provider = 2, receiver = 1 ); create set ( id = 1, origin = 1, comment = 'Data Provider' ); #定义复制集, origin指明主库 set add table ( set id = 1, origin = 1, id = 1, fully qualified name = 'public.Point', comment='Point Table' );
#为复制集合中增加表, fully qualified name 指明了要复制的表名. SUBSCRIBE SET (ID = 1, PROVIDER = 1, RECEIVER = 2, FORWARD = YES);
-----------------------------------------------------配置完成----------------------------------------------------------
pgAdmin3下主机可以看到如图
,从机也差不多这些东西。现在在主机上对point表做的任何改变,从机是也是跟着变的。
注意:主从机备份表的结构要一致,备份的表要有主键否则会出错。
Slony-I双机备份的更多相关文章
- sql2008R2数据库备份--双机备份
二.解决SQL2008代理作业出现错误: c001f011维护计划创建失败的解决方法 SQL2008数据库总会出现从 IClassFactory 为 CLSID 为 {17BCA6E8-A95D-49 ...
- Oracle_双机备份
1.dataguard http://jingyan.baidu.com/article/f96699bb956ef2894e3c1b39.html http://blog.itpub.net/262 ...
- 20161025__Oracle10g双机备份
1.主要流程,参考: 完整 Oracle10G DataGuard安装文档_百度文库.html http://wenku.baidu.com/link?url=8A7nJGSwRu-83mxEIqGE ...
- ubuntu上的mysql数据库双机备份设置
配置环境: myslq 5.5.3 + ubuntu server 12.04 一.配置MySQL主服务器(192.168.0.1) 1.增加一个账号专门用于同步 1 mysql>grant r ...
- 从零开始搭建一个从Win7环境备份至CentOS7的SVN双机备份环境
★几个关键的事项★ 需要关闭防火墙filewalld跟selinux ,在root用户下操作: [root@localhost svnRepos]# systemctl stop firewalld ...
- LINUX 自动备份脚本文件
首先我在/root/backup 目录下建立一个文件夹, #mkdir /root/backup/mysqlbackup 以后在每天五点钟,就会有一个文件保存在这里. 接着新建文件 #vim /roo ...
- RAID与双机热备简单介绍与区别
一. RAID技术详解 RAID是英文Redundant Array of Independent Disks的缩写,翻译成中文意思是“独立磁盘冗余阵列”,有时也简称磁盘阵列(Disk Arra ...
- Mysql 5.5 replication 多数据库主从备份Master-Slave配置总结
配置Mysql server 5.5 的双机备份,也就是master-slave模式.本例子还是一个多database复制的情况. 现在有两个database在同一台mysql server,也就是m ...
- oracle双机热备概念
1. 双机热备概述 双机热备有两种实现模式,一种是基于共享的存储设备的方式,另一种是没有共享的存储设备的方式,一般称为纯软件方式. 基于存储共享的双机热备是双机热备的最标准方案. ...
随机推荐
- WordPress社会化评论插件多说、有言、灯鹭、评论啦
社会化登录是指网站的用户通过使用QQ.人人网.腾讯微博.新浪微博等社会化媒体账号登录该网站,并让用户能够使用社会化媒体账号进行允许的操作,如评论.分享等.经过简单的代码整合,社会化媒体账号可以在第三方 ...
- KACK的处理方法
demo: .eq { color:#f00;/*标准浏览器*/ color:#f30\0;/*IE8,IE9,opera*/ *color:#c00;/*IE7及IE6*/ _color:#600; ...
- 类似a:hover的伪类的注解
a:link { font-size: 14pt; text-decoration: underline; color: blue; } /*设置a对象在未被访问前的样式表属性 .*/ a:hover ...
- prototype原型属性
<script type="text/javascript"> /* 需求:想把getMax与searchEle方法添加 到数组对象中. functoin Array( ...
- Linux下使用QQ的几种方式
Linux下没有官方的QQ聊天应用,对于经常使用QQ与朋友同事沟通交流的小伙伴们来说肯定很不方便,在Linux下可以使用以下几种方法使用QQ: 1.wine qq for linux Ubuntu ...
- 转:窗口启用/禁用功能函数EnableWindow的使用
在非MFC环境中如何使控件或者窗口禁用呢?起初是想通过发送消息来实现,但找来找去都木有找到控件禁用的消息(也是是博主木有找到的缘故),所以只能另辟蹊径,使用 EnableWindow这个函数, 该函数 ...
- ural 1494 Monobilliards
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; ],b ...
- 强大疯狂的qttools
就是有点疑惑,为什么不整合到QT主项目中呢? 有空好好看看: https://github.com/qtproject/qttools/tree/dev/src ------------------- ...
- Linux系统编程(33)—— socket编程之TCP程序的错误处理
上一篇的例子不仅功能简单,而且简单到几乎没有什么错误处理,我们知道,系统调用不能保证每次都成功,必须进行出错处理,这样一方面可以保证程序逻辑正常,另一方面可以迅速得到故障信息. 为使错误处理的代码不影 ...
- Linux系统编程(32)—— socket编程之TCP服务器与客户端
TCP协议的客户端/服务器程序的一般流程 服务器调用socket().bind().listen()完成初始化后,调用accept()阻塞等待,处于监听端口的状态,客户端调用socket()初始化后, ...