这两天正忙着研究postgresql,基本用法和其他数据库大同小异,先不自己讲解,今天主要想记录下postgresql的集群方案hot standby方式。

转载请注明:http://blog.csdn.net/lengzijian/article/details/7704814

本人设置集群环境:

三台电脑:一台主数据库和两台从数据库

1.      安装Postgresql9

tar -zxvf postgresql-9.1.3.tar.gz    #解压

cd postgresql-9.1.3

./configure --prefix /home/proxy_pg/pgsql  #配置postgresql安装目录

这里需要安装基础的库(gcc、readline、zlib、) #可以不必理会,make时会提示

make                         #编译

make install                    #安装

2.      添加postgres账户

useradd postgres                   #添加账户

passwd postgres                    #之后输入密码

#之后进入postgres用户

su postgres

3.      初始化主数据库

mkdir data                        #在你想要存放数据的地方创建data文件夹

bin/initdb –D ../data/               #初始化数据库

修改data/postgresql.conf

port = 5433                        #可以任意更改你想要的

wal_level = hot_standby

max_wal_senders = 30

修改data/pg_hba.conf

host    replication     all             0.0.0.0 0.0.0.0         trust

4.      启动主数据库

bin/pg_ctl start -D ../data/

5.      检测数据库是否启动成功

./psql -d postgres

psql (9.1.3)

Type "help" for help.

postgres=#                           #说明启动成功了

6.      基础备份

基本流程:在主数据库服务器上执行pg_start_backup(),复制data目录,在执行pg_stop_backup()。

./psql –d postgres

postgres=# select pg_start_backup(‘’);

#这姓这个方法后,所有请求在写日志之后不会再刷新到磁盘。直到执行pg_stop_backup()这个函数。

#下面需要拷贝一份data目录,并通过scp复制到子数据库中

cp –R data /data_bac

7.      创建从数据库(standby)

#通过scp方式拷贝data_bac目录到从数据库下(当然也可以通过其他方式)

scp -r data_bac/ postgres@192.168.30.199:/home/proxy_pg/pgsql/

#进入从数据库服务器,进入刚刚拷贝过来的data_bac目录下

cd data_bac

#修改postgres.conf

port = 5433 #改成你想的端口

hot_standby = on

#增加recovery.conf配置下连接的主数据库信息(ip、端口、用户)

standby_mode = 'on'

primary_conninfo = 'host=192.168.30.150 port=5433 user=postgres'

#删除pid文件

rm postmaster.pid

8.      启动从数据库

bin/pg_ctl start -D ../data_bac/

9.      停止主数据库基础备份

postgres=# select pg_stop_backup();

这里要注意的是:8和9步可以颠倒,因为先停止备份后,当从数据库启动会,会自动连接主数据库,拉取服务器自基础备份后的事务日志,然后,对事物日志进行重演。

10.  测试

#为了方便查看数据库,我安装了pgAdminII

当在主数据库中创建一张表并插入三条数据后,观察从数据库:

#创建数据库lengzijian

./createdb lengzijian -p 5433      #主从库全部都会创建lengzijian数据库

#接下来可以创建表,并且插入字段。这里就不演示了。

11.  总结

这里只是做了初步的集群安装,postgresql的集群方案还有好多种,本人会演示所有方案,之后会对每一种方案进行检测,如果你有做好的实验或者方案,不放分享给我。我来汇总下,在本篇文章中,如果遇到任何问题,可以随时留言,看到会第一时间回复!

周末愉快

postgresql集群方案hot standby 安装和测试相关推荐

  1. postgresql集群方案hot standby初级测试(二) ——处理数据能力

    先写上数据库配置: 一个主数据库,两个从数据库 主数据库:Intel(R) Pentium(R) D CPU 2.80GHz *2                   |        MemTota ...

  2. Redis集群方案,Codis安装测试

    Redis集群方案,Codis安装测试 1,关于豌豆荚开源的Codis Codis是豌豆荚使用Go和C语言开发.以代理的方式实现的一个Redis分布式集群解决方案,且完全兼容Twemproxy.Twe ...

  3. PostgreSQL集群方案-citus

    citus Citus基本上是Postgres,可以进行横向扩展.它是Postgres的扩展,可以在多台计算机的群集中分发数据和查询.作为扩展(而不是分支),Citus支持新的PostgreSQL版本 ...

  4. PostgreSQL集群方案-Postgres-XL

    Postgres-XL 主机 系统 hostname 192.168.1.42 centos7 node1 GTM 192.168.1.43 centos7 node2 gtm_proxy.Coord ...

  5. docker 安装redis第三方集群方案 codis

    docker 安装redis第三方集群方案 codis docker 安装redis第三方集群方案 codis 首先,安装好docker环境,这里不提,需要看的可以在我的博客里找, 事先准备好zook ...

  6. PostgreSQL高可用性、负载均衡、复制与集群方案介绍

    目录[-] 一.高可用性.负载均衡.复制的几个方案比较: 二.多节点集群方案比较 9.3官方文档(中文):http://58.58.27.50:8079/doc/html/9.3.1_zh/high- ...

  7. PostgreSQL学习总结(11)—— PostgreSQL 常用的高可用集群方案

    前言 PostgreSQL 本身不支持任何多主群集解决方案,例如 MySQL 或 Oracle.尽管如此,仍有许多商业和社区产品提供此实现,以及其他产品,例如 PostgreSQL 的复制或负载平衡. ...

  8. Greenplum集群Master与Standby相互切换

    Greenplum集群Master与Standby相互切换 1 概述 1 2 查看集群的基本信息 2 2.1 查看集群的配置信息 2 2.2 快速查看down segments节点 2 2.3 查看M ...

  9. 使用Pgpool搭建Postgresql集群

    操作系统:CentOS7 Postgresql版本:10.10 Pgpool-II版本:4.0.6 端口   9999:对外提供服务   9000:watch_dog   9898:pcp   969 ...

最新文章

  1. Python 爬取北京二手房数据,分析北漂族买得起房吗?(附完整源码)
  2. springboot之简洁集成mybatis
  3. 关于USART接收中断的BUG和注意事项
  4. mysql帖子排序_mysql - 无法按元值对帖子排序 - SO中文参考 - www.soinside.com
  5. 我在PMCAFF,感觉身体被掏空
  6. 随机给出三十道四则运算题目
  7. [mybatis]映射文件_参数处理_#取值时指定参数相关规则
  8. linux构建主从域名服务器
  9. BZOJ3833 : [Poi2014]Solar lamps
  10. sublime html文件中php代码,sublime - 嵌套在html里面的php代码该遵循怎样的规范
  11. 敏捷外包工程系列之四:合理选择质量管理的等级(一)
  12. 一行命令自动给图片戴上口罩,硬核操作!
  13. 编程语言性能实测,Go 比 Python 更胜一筹?
  14. JavaScript基础语法快速入门
  15. java web几百万分页_举例详解用Java实现web分页功能的方法
  16. java中的各个数据结构区别
  17. python归一化函数_机器学习-归一化方法
  18. mapminmax 用法
  19. html字体加粗且变色,简单的html代码 加粗 加亮 字型加大 变色 分别是写什么`
  20. DIY 一个 JSON解析器。

热门文章

  1. 三层架构 android访问MSSQL数据库 程序 (服务器端)
  2. 开源一站式移动应用生成平台Jingub系列(0):背景资料介绍
  3. sql学习之笔记(时间)季度的第一天
  4. JavaEE班第四天
  5. 为什么中文分词比英文分词更难?有哪些常用算法?(附代码)
  6. 从概念到落地,中台可以解决哪些问题?怎么做?(附PPT)
  7. 极度烧脑+惊人发现:4个颠覆你世界观的量子理论实验
  8. 成为大数据顶尖程序员,先过了这些Hadoop面试题!(附答案解析)
  9. 面试官:能说说Redis的持久化机制吗?
  10. ArrayList和LinkedList如何实现的?我看你还有机会!