(一)方案
尽管做数据库 postgresql 集群的方式有很多种,数据库9.0以上原生的 standby,呼声很高的 guzz,老牌的 Slony-I,但看过了小日本仔的一篇 pdf 后,觉得用 Streaming replication + Hot Standby + pgpool-II 似乎比较适合我的口味。
(1)我一向赞成数据库集群应该由数据库厂商提供
(2)数据库集群对应用是透明的,可以视作一个数据库
(3)这个方案是有优点的:
优势:
Write performance is good (10-20% overhead)
Automatic failover of slaves
Connection pooling and load balancing: boost performance
DDL replication
Large object replication
劣势:
Asynchronous replication
However replication delay is relatively low
(4)截个图片
(5)深入了解 pgpool2
. 用户手册 http://pgpool.projects.postgresql.org/pgpool-II/doc/pgpool-zh_cn.html
. 入门教程 http://pgpool.projects.postgresql.org/pgpool-II/doc/tutorial-zh_cn.html
. 中文试用 http://blog.csdn.net/xtlog/article/details/4219353
. Parallel_Mode 并发模式,传说中的 scale out 分表
=====================================================================
(二)从零开始安装
(1)虚拟机安装 CentOS5.6,下载 http://www.thoughtpolice.co.uk/vmware/#centos 注意不要下 mini 版,mini 版几乎不能用。
(2)创建目录:
。/opt/postgres/data/5432/data - 主库
。/opt/postgres/data/5434/data - 从库
(3)下载 postgresql 9.1
#wget http://oscg-downloads.s3.amazonaws.com/packages/postgres-9.1.0-1.i386.openscg.rpm
#rpm -ivh postgres-9.1.0-1.i386.openscg.rpm
#/etc/init.d/postgres-9.1-openscg start
删除自动安装的文件
#rm /etc/init.d/postgres-9.1-openscg
(4)重新初始化数据库安装
(4)修改防火墙
#iptables -I INPUT -p tcp --dport 5432 -j ACCEPT
#iptables -I INPUT -p tcp --dport 5434 -j ACCEPT
#iptables -I INPUT -p tcp --dport 5436 -j ACCEPT
#/etc/rc.d/init.d/iptables save
#/etc/init.d/iptables restart
(5)修改配置文件,支持远程访问
#vim /opt/postgres/9.1/data/pg_hba.conf
修改成 host all all 0.0.0.0/0 md5
(6)修改配置文件成主服务器
修改 postgresql.conf:
###
listen_addresses = '*'
port = 5432
wal_level = hot_standby
max_wal_senders = 1
wal_keep_segments = 32
log_destination = 'stderr'
logging_collector = on
log_min_error_statement = error
(7)重启主服务
#/opt/postgres/9.1/bin/postgres -D /opt/postgres/data/5432/data
(8)通过 DBeaver 类型的客户端工具连接数据库,测试连接成功。
(9)安装从数据库
su postgres
/opt/postgres/9.1/bin/initdb -D /opt/postgres/data/5434/data
cd /opt/postgres/data/5434/data
vi postgres.conf
listen_addresses = '*'
port = 54321
hot_standby = on
vi recovery.conf
standby_mode = 'on'
primary_conninfo = 'host=127.0.0.1 port=5432 user=repl password=123456'
- 大小: 134 KB
- 大小: 17.1 KB
- 大小: 8 KB
分享到:
相关推荐
Arch-Linux-Install-ScriptArch_Linux_安装脚本_Arch-Linux-Installer
Next Generation On Demand (NGOD) Asset Architecture Comcast-SP-NGOD-ASSET-ARCH-I03-100731 Issued July 31, 2010
"cacti-plugin-arch-2.0.tar.gz" 是一个针对Cacti的插件包,用于扩展Cacti的功能,提供更丰富的监控选项。此插件名为“Arch”,可能是对系统架构或性能分析相关的增强。 该压缩包文件的名称表明它是版本2.0,通常这...
标题“Arch-03-08-热敏打印机集成方法”指的是关于在计算机系统或应用程序中集成热敏打印机的技术过程。热敏打印机是一种利用热敏纸进行打印的设备,广泛应用于零售、餐饮和其他需要快速、小票打印的场景。集成热敏...
标题“Arch-03-15- Nginx+tomcat 配置负载均衡动静分离”涉及的是在Web服务器架构中使用Nginx与Tomcat的集成,通过配置实现负载均衡和动静态资源分离。这样的架构可以提高系统的可用性和响应速度,减轻后端应用...
基于android8.1源码平台中生成的jar,亲测可用!!!!
变系数ARCH-M模型是时间序列分析领域的重要研究对象,其核心在于通过截面似然估计来检验模型是否具有条件异方差性(ARCH效应)。首先,我们来探讨一下条件异方差性的概念,它是指在时间序列分析中,随机变量的条件...
OpenRISC是一种开源的指令集架构(ISA),它致力于提供一个简单、易于实现和使用的处理器核心,适用于广泛的嵌入式系统和应用程序。该文档是关于OpenRISC1000架构的手册,版本号为1.0,修订号为0,发布日期为2012年...
标题中的"Python库 | arch-4.11-cp35-cp35m-win32.whl"指的是一个特定版本的Python库,名为“arch”,版本为4.11,适用于Python 3.5解释器(由"cp35"标识),且是针对32位Windows操作系统("win32")的。"cp35m"表示...
Next Generation On Demand (NGOD) Overall Architecture Comcast-SP-NGOD-GEN-ARCH-I03-100731 Issued July 31, 2010
NULL 博文链接:https://cnmqw.iteye.com/blog/1243596
标题中的"postgresql12.3-glibc-2.28-aarch64.tar.gz.gz"揭示了这是一个针对ARM架构的PostgreSQL数据库服务器的特定版本。PostgreSQL,通常简称为pgsql或postgres,是一款开源的关系型数据库管理系统(RDBMS),以其...
基于 Arch Linux 的 OpenWrt Buildroot 这是一个用于 OpenWrt buildroot 的基于 Arch Linux 的 docker 容器。 源自 因为构建系统要求它的命令不能被root执行,所以创建了用户openwrt。 buildroot 可以在/home/...
python库。 资源全名:arch-4.8.0-cp27-cp27m-win32.whl
资源来自pypi官网。 资源全名:arch-4.17-cp39-cp39-manylinux1_x86_64.whl
我的Arch_Linux安装步骤和日志_Arch-Linux-install-log
arch-snds100驱动程序是专为s3c44b0x处理器设计的一款核心驱动,用于管理和优化硬件资源的使用。s3c44b0x是一款由Samsung生产的微处理器,常用于嵌入式系统,如工业控制、移动设备和消费电子产品等。驱动程序在操作...
Arch_Linux_盒装安装媒介的小盒子_arch-media-box-typst
arch-model-estimation_solution.ipynb