https://www.pgpool.net/docs/latest/en/html/admin.html
本章节描述是源码方式安装pgpool-II
一、安装软件
官网地址:https://www.pgpool.net;获取对应的版本。
-- 解压
$ tar -zxvf pgpool-II-4.1.4.tar.gz
-- 注意 pg_config
-- 若没有加载下环境变量
-- 编译安装
$ ./configure --prefix=/opt/pgpool
$ make
$ make install
二、安装pgpool_recovery
在线恢复时,Pgpool-II需要pgpool_recovery、pgpool_remote_start和pgpool_switch_xlog函数。另外pgpoolAdmin的管理工具,停止,重启或重新加载一个PostgreSQL在屏幕上使用pgpool_pgctl。这些函数先安装在template1中,不需要安装在生产数据库中。
# 编译安装
$ cd pgpool/pgpool-II-4.1.4/src/sql/pgpool-recovery/
$ make
$ make install
# 进入template1数据库
$ psql -c "create extension pgpool_recovery" template1
三、安装pgpool_regclass
PostgreSQL版本是9.4以上,跳过此操作;否则需要生产数据库安装
# 编译安装
$ cd pgpool/pgpool-II-4.1.4/src/sql/pgpool-regclass/
$ make
$ make install
# 进入template1数据库; 其生产数据库也需要执行
$ psql -c "create extension pgpool_regclass" template1
四、创建insert_lock表
只有内置复制模式需要此操作。需要生产数据库安装
创建pgpool_catalog.insert_lock,强烈建议使用用于互斥的insert_lock表。如果没有这个,insert_lock也可以工作。但是,在这种情况下Pgpool-II锁定插入目标表。表锁与 vaccum 冲突,因此 insert 处理可能会因此等待很长一段时间
$ cd pgpool-II-4.1.4/src/sql
# 其生产数据库也需要创建
$ psql -f insert_lock.sql template1