下载pgpool2源代码:
wget http://www.pgpool.net/download.php?f=pgpool-II-3.6.4.tar.gz
下载pgsql源代码:
wget https://ftp.postgresql.org/pub/source/v9.6.3/postgresql-9.6.3.tar.gz
安装postgresql(参考:https://my.oschina.net/tashi/blog/189351)
解压:
tar zxvf postgresql-9.6.3.tar.gz
创建pg安装目录:
mkdir pgsql
安装三部曲:
./configure --prefix=/home/Lyndon/pgsql --without-readline --with-pgport=5678
--prefix指定安装目录, --with-pgport指定pg的端口号,confiure命令的可选参数,参考:http://www.postgresql.org/docs/9.3/interactive/install-procedure.html
make
make install
创建数据目录
mkdir pgdata
设置环境变量
打开.bashrc添加如下内容
export PATH=/home/Lyndon/pgsql/bin:$PATH
export PGDATA=/home/Lyndon/pgdata
export PGHOME=/home/Lyndon/pgsql
export LANG=zh_CN.UTF-8
export PGPORT=5678
之后执行
source .bashrc
安装pgpool2
解压:
tar zxvf download.php\?f\=pgpool-II-3.6.4.tar.gz
安装同上三部曲,但若pgsql的安装目录是自己指定的且没有在环境变量中配置,在安装时序执行pg的安装目录
./configure --prefix=/home/Lyndon/pgpool
make
make install
配置pgpool.conf
1.添加pg服务器节点信息
backend_hostname0 = 'localhost'
backend_port0 = 5678
backend_weight0 = 1
backend_data_directory0 = '/home/Lyndon/pgdata'
(若希望pgpool管理更多的pg服务器,可继续添加)
修改pgpool的日志及进程号目录
pid_file_name = '/home/Lyndon/pgpool/pid/pid'
logdir = '/home/Lyndon/pgpool/log'
配置pcp.conf
使用pgpool下的pg_md5生成一个密码
然后添加到pcp.conf中
Lyndon:030c75b8bc59245e6b7a252b8aec6973
前面是用户名,后面是用md5生成的密码
启动pgpool2
./pgpool -n -d > /home/Lyndon/pgpool/log/pgpool.log 2>&1 &
初始化pg服务器
./initdb -D /home/Lyndon/pgdata/
启动pg
./pg_ctl -D /home/Lyndon/pgdata/ -l logfile start(默认日志打印到/tmp)
执行sql
./psql -h localhost -p 9999 -U Lyndon postgres(以pgpool模式启动,将pgpool的端口9999粘上)
可通过sql查询挂在pgpool上pg服务器信息
也可通过pgpool下的命令查看
查看挂的个数:密码就是你用md5生成的那个,我的是Lyndon
查看node信息
参考链接:
https://my.oschina.net/tashi/blog/189351
http://pgpool.projects.pgfoundry.org/pgpool-II/doc/pgpool-en.html
http://blog.itpub.net/30158401/viewspace-1652732/
http://www.pgpool.net/docs/latest/tutorial-zh_cn.html#start
https://github.com/digoal/blog/blob/master/201608/20160824_03.md
(以上为pgpool管理一个pg服务器的安装步骤)