1. 下载安装
在官网 http://pgfoundry.org/projects/pgpool/ 下载 pgpool-II 2.2.2.tar.gz ,执行以下命令安装:
#tar xvf pgpool-II 2.2.2.tar.gz
#cd pgpool-II 2.2.2
#./ configure; make; make install;
2. Parallel_Mode 配置
数据库的 Patition 可以利用 Pgpool-II 的 Parallel_Mode 来实现,在这种方式下,必须设置另外一个叫做 “System Database” 的数据库(我们称之为 SystemDB )。 SystemDB 保存决定数据如何在各节点中保存的用户定义规则,另一个用途是合并使用数据库链( dblink )从数据库节点返回的结果。
本文中的配置, Pgpool 和 SystemDB 都放在服务器 192.168.1.239 ,占用端口分别为: 9999 和 5444 。
配置文件的默认路径是: /usr/local/etc ,首先需要配置 pgpool.conf
#cd /usr/local/etc ; cp pgpool.conf.sample pgpool.conf;
下面是具体的配置过程:
设置并发查询
将 pgpool.conf 文件中的 parallel_mode 参数设置为 true 开启数据库复制功能:
parallel_mode = true
这样并不能自动开始并发查询, pgpool-II 还需要 SystemDB 以及分布规则来知道如何在各节点中分布数据。
另外, SystemDB 使用数据库链连接 pgpool-II ,因此,需要设置 listen_addresses 参数好让 pgpool-II 接受这些连接请求:
listen_addresses = '*'
注意:并发查询和复制是不能共存的,使用并发查询功能时, replication_mode 必须设置为 false 。此外,并发查询和复制采用不同的格式储存数据,这样前边我们创建的 “bench_replication” 数据库无法被重用( reuse )。
replication_mode = false
load_balance_mode = false
parallel_mod 设置为 true 、 listen_addresses 设置为 '*' 、 replication_mode 和 load_balance_mode 设置为 false 。
配置 SystemDB
SystemDB 仅仅是一个安装有数据库链的数据库,数据表 “dist_def” 被用来保存数据分布规则。可以在单独的电脑中放置 SystemDB ,也可以与数据库节点之一共存。
在服务器 192.168.1.121 上的 5444 端口上创建 SystemDB ,下边是 SystemDB 的参数设置列表:
system_db_hostname = '192.168.1.121'
system_db_port = 5444
system_db_dbname = 'pgpool'
system_db_schema = 'pgpool_catalog'
system_db_user = 'pgpool'
system_db_password = ''
事实上,这是 pgpool.conf 中的缺省设置。

本文详细介绍了如何利用Pgpool-II搭建PostgreSQL集群,包括Parallel_Mode配置、负载均衡(Load_Balance_Mode)和复制(Replication_Mode)。在Parallel_Mode下,通过SystemDB和dist_def数据表实现数据分布规则。配置包括设置并发查询、定义数据分布节点和规则,以及在load_balance_mode下实现读写分离和故障切换。此外,还提到了replication_mode的使用,以确保数据一致性。
最低0.47元/天 解锁文章
1051





