概述
PgBouncer可以在数据库和前端应用间建立连接,由PgBouncer去处理和后端数据库的连接关系。
对客户端的连接进行限制,预防过多或者恶意的连接请求。
主要工作还是每一个数据节点对数据的存取,pgbouncer只是提供给客户端数据节点的分配和链接以及限制客户端连接的数量。整体上实现了对数据的负载均衡。能够缓存和PostgreSQL的连接,当有连接请求进来的时候,直接分配空闲进程,而不需要PostgreSQL fork出新进程来建立连接,以节省创建新进程,创建连接的资源消耗。
能够有效提高连接的利用率,避免过多的无效连接,导致数据库消耗资源过大,CPU占用过高。
1.安装配置过程
–解压pgbouncer包
su - pg10
cd resource/
tar -zxf pgbouncer-1.14.0.tar.gz
–创建pgbouncer目录
mkdir ~/pgbouncer
–装libevent-devel
su - root
yum install -y libevent-devel
(或者su - root
rpm -ivh libevent-devel-2.0.21-4.el7.x86_64.rpm)
–编译安装pgbouncer
su - pg10
cd resource/pgbouncer-1.14.0/
./configure --prefix=/home/pg10/pgbouncer
–编译
make -j4
–编译安装
make install -j4
–切换到安装目录
cd ~/pgbouncer/
–编辑pgbouncer.ini文件
egrep -v '^;| ^$' /home/pg10/pgbouncer/share/doc/pgbouncer/pgbouncer.ini > pgbouncer.ini
vi pgbouncer.ini
[databases]
appdb = host=主机ip dbname=appdb port=5666
[pgbouncer]
logfile = /home/pg10/pgbouncer/pgbouncer.log
pidfile = /home/pg10/pgbouncer/pgbouncer.pid
listen_addr = *
listen_port = 5766
auth_type = trust
auth_file = /home/pg10/pgbouncer/userlist.txt
cd /home/pg10/pgbouncer/
cp share/doc/pgbouncer/userlist.txt .
vi userlist.txt
–清空,并添加
"appuser" "1qaz@WSX"
–启动pgbouncer
su - pg10
cd
vi .bashrc
将PATH变成
export PATH=${PGHOME}/bin:/home/pg10/pgbouncer/bin:${PATH}
–使环境变量生效
. .bashrc
pgbouncer --help
pgbouncer -d -v /home/pg10/pgbouncer/pgbouncer.ini
vi $PGDATA/pg_hba.conf
加一行
host appdb appuser 192.168.2.0/24 trust
2.验证
pg_ctl reload
psql -U appuser -d appdb -p 5766
连接失败的话------
su - root
ps -ef | grep pgbouncer
kill -9 21429
pgbouncer -d -v /home/pg10/pgbouncer/pgbouncer.ini
–测试连接成功
psql -U appuser -d appdb -p 5766
连接成功
最后
以上就是大力小懒虫为你收集整理的【安装配置PGBouncer连接池】的全部内容,希望文章能够帮你解决【安装配置PGBouncer连接池】所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复