您的位置:首页 > 数据库

PostgreSQL连接池工具PGBouncer安装

2015-09-08 14:41 971 查看
前面写了一篇文章简单描述了下PGBouncer,有兴趣的话可以看下:/article/11706557.html

这篇文章介绍PGBouncer的安装以及一些基础的配置,这里使用源码编译安装。

环境:虚拟机Centos6.6,已安装好postgresql9.4.1

首先要下载pgbouncer,下载地址:https://pgbouncer.github.io/downloads/

这里我下载的是当前最新版本pgbouncer-1.6.1.tar.gz,下载后上传到linux。

PGBouncer的安装还是相当简单的,可以在安装目录阅读REDME文件,有安装流程介绍:



这里需要注意一点是,需要安装libevent与libevent-devel包,否则会报如下编译错误:

checking for libevent... configure: error: not found, cannot proceed

这里我使用yum直接安装libevent-devel,会自动安装相关的依赖包,还是比较方便的:

yum install -y libevent-devel

重新编译安装,安装目录为/usr/local/pgbouncer

./configure --prefix=/usr/local/pgbouncer --with-libevent=libevent-prefix

make

make install

ok安装完成。

计划以udbac用户运行pgbouncer,需进行如下配置:

创建/usr/local/pgbouncer/udbac目录用来存放相关配置文件,并授权给用户udbac。

cd /usr/local/pgbouncer

mkdir udbac

chown -R udbac udbac

chmod 0700 udbac

拷贝pgbouncer配置文件:

su udbac

cp /usr/local/pgbouncer/share/doc/pgbouncer/pgbouncer.ini /usr/local/pgbouncer/udbac/

cp /usr/local/pgbouncer/share/doc/pgbouncer/userlist.txt /usr/local/pgbouncer/udbac/

配置pgbouncer.ini

[databases]

pb_udbac = host=127.0.0.1 port=5432 user=udbac password=udbac dbname=udbac

[pgbouncer]

logfile = /usr/local/pgbouncer/udbac/pgbouncer.log

pidfile = /usr/local/pgbouncer/udbac/pgbouncer.pid

listen_addr = *

listen_port = 6432

auth_type = md5

auth_file = /usr/local/pgbouncer/udbac/userlist.txt

admin_users = pb_admin

stats_users = pb_stats

pool_mode = session

server_reset_query = DISCARD ALL

server_check_query = select 1

max_client_conn = 100

default_pool_size = 20

配置userlist.txt:

"udbac" "md5b2703c100ff6b49ce21eb67f874e51a1"

"pb_admin" "udbac"

"pb_stats" "udbac"

其中udbac是后端数据库账户及密码,pb_amdin是登录pgbouncer控制台的账户,pb_stats是只读查看pgbouncer状态的用户。

udbac的密码为MD5加密,所以需要到postgresql的pg_shadow表中获取下udbac密码的加密结果。



配置完成后,可以启动pgbouncer了。

pgbouncer -d /usr/local/pgbouncer/udbac/pgbouncer.ini



测试连接,注意防火墙请打开6432端口:



登录pgbouncer控制台:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: