一、配置环境:

示例环境

主机名

IP

角色

系统版本

数据目录

pg版本

db1

192.168.128.128

主库

RedHat5.3

/app/postgreSQL/data

9.1.7

db2

192.168.129.129

备库

RedHat5.3

/app/postgreSQL/data

9.1.7

二、postgresql安装(略)

主库完全安装 。备库安装只需要到make install即可   不需要initdb。

三、主库配置(在192.168.128.128操作配置)

1、创建复制角色

postgres=# create user rep replication login connection limit 100 encrypted password 'rep123';

CREATE ROLE

2、配置pg_hba.conf

host    replication     rep             192.168.128.129/32      md5

host    all             all             192.168.128.1/32        trust

3、配置postgresql.conf

wal_level = hot_standby

archive_mode = on

archive_command = '/bin/date'

wal_keep_segments = 256

max_wal_senders = 32

max_standby_archive_delay = 300s

max_standby_streaming_delay = 300s

wal_receiver_status_interval = 10s

hot_standby_feedback = on

hot_standby = on

/app/postgreSQL/bin/pg_ctl restart

/app/postgreSQL/bin/pg_ctl reload -D /app/postgreSQL/data

四、备库配置(在192.168.128.129)上进行操作

1、创建目录

创建于主库相同的目录并授权 如data目录  以及后来创建的表空间目录

2、创建密码文件

[postgres@db2 ~]$ vi .pgpass

192.168.128.128:5432:replication:rep:rep123

[postgres@db2 ~]$ chmod 0600 .pgpass

3、pg_basebackup

[postgres@db2 ~]$ /app/postgreSQL/bin/pg_basebackup -F p -D /app/postgreSQL/data -h 192.168.128.128 -p 5432 -U rep

[postgres@db2 data]$ cp /app/postgreSQL/share/postgresql/recovery.conf.sample  recovery.conf

4、修改recovery.conf配置

standby_mode = on

primary_conninfo = 'host=192.168.128.128 port=5432 user=rep'

trigger_file = '/app/postgreSQL/data/postgresql.trigger.5432'

五、启动服务

/app/postgreSQL/bin/pg_ctl start -D /app/postgreSQL/data

1、主库进程

[postgres@db1 ~]$ ps -ef|grep postgres

postgres 11174 13893  0 04:13 ?        00:00:00 postgres: wal sender process rep 192.168.128.129(49028) streaming 0/30001D0

postgres 11187 13984  0 04:16 pts/1    00:00:00 ps -ef

postgres 11188 13984  0 04:16 pts/1    00:00:00 grep postgres

postgres 13893     1  0 03:46 pts/1    00:00:00 /app/postgreSQL/bin/postgres

postgres 13895 13893  0 03:46 ?        00:00:00 postgres: writer process

postgres 13896 13893  0 03:46 ?        00:00:00 postgres: wal writer process

postgres 13897 13893  0 03:46 ?        00:00:00 postgres: autovacuum launcher process

postgres 13898 13893  0 03:46 ?        00:00:00 postgres: archiver process   last was 000000010000000000000002.00000020.backup

postgres 13899 13893  0 03:46 ?        00:00:00 postgres: stats collector process

root     13921 13890  0 02:10 pts/1    00:00:00 su - postgres

postgres 13922 13921  0 02:10 pts/1    00:00:00 -bash

root     13983 13951  0 02:11 pts/1    00:00:00 su - postgres

postgres 13984 13983  0 02:11 pts/1    00:00:00 -bash

2、备库进程

[postgres@db2 ~]$ ps -ef|grep postgres

postgres 10855     1  0 04:10 pts/1    00:00:00 /app/postgreSQL/bin/postgres -D /app/postgreSQL/data

postgres 10856 10855  0 04:10 ?        00:00:00 postgres: startup process   recovering 000000010000000000000003

postgres 10857 10855  0 04:10 ?        00:00:01 postgres: wal receiver process   streaming 0/3000260

postgres 10858 10855  0 04:10 ?        00:00:00 postgres: writer process

postgres 10859 10855  0 04:10 ?        00:00:00 postgres: stats collector process

postgres 10869 13863  0 04:15 pts/1    00:00:00 ps -ef

postgres 10870 13863  0 04:15 pts/1    00:00:00 grep postgres

root     13862  3671  0 02:14 pts/1    00:00:00 su - postgres

postgres 13863 13862  0 02:14 pts/1    00:00:00 -bash

六、测试

1、主库建表插入数据

[postgres@db1 ~]$ /app/postgreSQL/bin/psql

psql (9.1.7)

Type "help" for help.

^

postgres=# create table test (id integer);

CREATE TABLE

^

postgres=# insert into test values (1);

INSERT 0 1

postgres=# select * from test;

id

----

1

(1 row)

2、备库查看数据是否传输。

[postgres@db2 ~]$ /app/postgreSQL/bin/psql

psql (9.1.7)

Type "help" for help.

postgres=# select * from test;

id

----

1

(1 row)

postgres=#

come from :http://blog.csdn.net/hai520ny/article/details/48135987

postgresql流复制配置的更多相关文章

  1. PostgreSQL流复制

    原理机制 参考--https://yq.aliyun.com/articles/51009 主备总体结构 PG主备流复制的核心部分由walsender,walreceiver和startup三个进程组 ...

  2. PostgreSQL流复制参数max_wal_senders详解

    转自:http://my.oschina.net/Kenyon/blog/152234PostgreSQL 9.2.4 主机:192.25.10.76 从机:192.25.10.71 做postgre ...

  3. PostgreSQL 流复制+高可用

    QA PgPool-II 同步 Postgresql X1 服务器准备 192.168.59.121 PostgreSQL10 192.168.59.120 PGPool-II 3.7 X2 安装Po ...

  4. PostgreSQL流复制记录

    参考了别人的部分,添加了自己在实践中的内容,仅做记录. 1.同步流复制中 主机操作 1.1postgresql.conf wal_level = hot_standby # 这个是设置主为wal的主机 ...

  5. [笔记] postgresql 流复制(streaming replication)

    基本环境说明: os:FreeBSD 9.3 postgresql version: master:192.168.56.101 standby:192.168.56.102 安装过程略,基于pkg包 ...

  6. 再不了解PostgreSQL,你就晚了之PostgreSQL主从流复制部署

    前言 在MySQL被收购之后,虽然有其替代品为: MariaDB,但是总感觉心里有点膈应.大家发现了另一款开源的数据库: PostgreSQL. 虽然centos自带版本9.2也可以用,但是最近的几次 ...

  7. KingbaseES V8R6集群部署案例之---Windows环境配置主备流复制(异机复制)

    案例说明: 目前KingbaseES V8R6的Windows版本不支持数据库sys_rman的物理备份,可以考虑通过建立主备流复制实现数据库的异机物理备份.本案例详细介绍了,在Windows环境下建 ...

  8. Oracle 流复制实践笔记

    最近因为业务需求,需要在两个数据库之间做双向实时同步,遂实践了一把Oracle的流复制,遇到了很多疑难问题,最终也貌似成功,现记录如下. 我是使用OEM来实现流复制的. 10.进行流复制的两个数据库的 ...

  9. 20181219-PostgreSQL 流复制监控脚本

    PostgreSQL 流复制监控脚本 https://github.com/AndyYHM/Writing/blob/PostgreSQL/20181219-PostgreSQL%20Stream%2 ...

随机推荐

  1. js 进度条,可实现结束和重新开始

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. php以post方式向接口发送数据

    工作需要,我负责收集服务器数据,然后定时向中心服务器发送.我看到了接口信息,需要设置heads头信息,需要发送数据,且是post方式. 这里就用到了curl //发送post请求 function r ...

  3. jquery ajax传递多个对象或数组到后台

    1.js对象创建:因为需要把对象json序列化后,才能传递到后台,后台根据json字符串进行反序列化. 2.Jquery   $.ajax方法的配置 针对$.ajax方法的配置参数需要进行修改: 1) ...

  4. hibernate 中如何用注解映射定长字符类型char(2)

    如果是用xml的方式配置映射,可以在<column>标签的sql-type属性中设置char(2),比如: <property name="age" type=& ...

  5. MySQL Server-id踩到的坑

    最近踩到一个说大不大,说小不小的坑,在此分享出来给各位同学.事情是这样的,线上有2台服务器,1主1从.A -> B,B服务器从A服务器同步数据.每天使用xtrabackup在B服务器上面进行全备 ...

  6. Lambda表达式公共拼接函数(原创)

    #region Lambda公共拼接函数 /// <summary> /// LambdaWhere(枚举) /// </summary> public enum Lambda ...

  7. [silverlight—wcf]参数:调试资源字符串不可用,秘钥和参数通常提供足够的信息用以诊断问题。

    这段时间在做一个项目,有一项需求是上传,经过思考之后,决定采取Silverlight+WCF的方式做上传操作.就在项目做完了之后,本地测试也都没问题,发布到服务器上的时候,顿时就出现故障了.在选择文件 ...

  8. 【iCore3 双核心板】例程十三:SDIO实验——读取SD卡信息

    实验指导书及代码包下载: http://pan.baidu.com/s/1hqM787E iCore3 购买链接: https://item.taobao.com/item.htm?id=524229 ...

  9. JavaScript 类式继承与原型继承

    交叉着写Java和Javascript都有2年多了,今天来总结下自己所了解的Javascript类与继承. Javascript本身没有类似Java的面向对象的类与继承术语,但其基于原型对象的思想却可 ...

  10. SqlServer 不是主键 如何自增

    SqlServer 不是主键 如何自增:INSERT INTO dbo.表 VALUES('14-19周',0,(select COUNT(1) from dbo.表)+1) (select COUN ...