postgresql mysql 源码安装教程_postgresql 连接池pgbouncer的安装教程 | linux系统运维

PgBouncer安装教程

56f013e987e76425c8e8fd9a20368afc.png

postgresql

说明

在安装pgbouncer之前,已安装了postgres

软件下载:

wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz

wget http://pgfoundry.org/frs/download.php/3393/pgbouncer-1.5.4.tar.gz

编译安装libevent

tar zxf libevent-2.0.21-stable.tar.gz

cd libevent-2.0.21-stable

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

gmake

gmake install

加载libevent动态库

cd /etc/ld.so.conf.d/

vim libevent2.0.21.conf

/usr/local/libevent/lib

ldconfig

配置运行环境变量

vim /etc/profile

PATH=/usr/local/pgbouncer/bin:$PATH

export PATH

执行生效

source /etc/profile

切换 到postgres用户,配置运行环境

su - postgres

mkdir /data/pgbouncer/ -p

配置用户密码文件:

cd /data/pgbouncer

vim user.txt

"admin"        "111111"

"user"          "111111"

"drfdai"        "111111"

第一列是用户名,第二列是密码,连接 pgbouncer用的

配置pgbouncer参数

[databases]

write_db = host=192.168.1.240 port=5432 dbname=drfdai user=postgres password=postgres

read_db = host=192.168.1.241 port=5432 dbname=drfdai user=postgres password=postgres

[pgbouncer]

listen_port = 5433

listen_addr = *

auth_type = md5

auth_file = /data/pgbouncer/user.txt

logfile = /data/pgbouncer/pgbouncer.log

pidfile = /data/pgbouncer/pgbouncer.pid

admin_users = drfdai

pool_mode = session

max_client_conn = 6000

default_pool_size = 128

[databases]

配置后端PG数据库顶

host= 数据库IP

port= 数据库端口

dbname= 数据库名

user= 数据库帐号

password= 数据库密码

[pgbouncer]

配置连接池参数

listen_port=  连接池端口,用户连接时需要用这个端口

listen_addr=  允许连接的IP,*代表所有IP

auth_type=md5  用md5方式验证帐号密码

auth_file=存储帐号密码用的文件,指的是连接池所用到的帐号密码,用户连接进来用的

admin_users= 管理连接池的用户名

pool_mode= 指定池的模式,可以有session,transaction,statement三种模式

max_client_conn=  允许连接到pgbouncer上的最大客户端数

default_pool_size= 连接池的默认在大小

如果有连接池后端用多个数据库,则配置多条databases,我这里配置了二个,一个是主(write_db),一个是从(read_db),读写分离用的

如果连接的后端数据库不是本地的,需要在后端数据库中开启远程允许连接池访问的权限,否则登陆失败

pgbouncer服务管理

检测配置文件

/usr/local/pgbouncer/bin/pgbouncer -v /data/pgbouncer/pgbouncer.ini

启动:

/usr/local/pgbouncer/bin/pgbouncer -d /data/pgbouncer/pgbouncer.ini

重启:

/usr/local/pgbouncer/bin/pgbouncer -R -d /data/pgbouncer/pgbouncer.ini

停止:

psql -p 5433 pgbouncer -h 127.0.0.1 -U drfdai -c 'shutdown'

加载配置:

psql -p 5433 pgbouncer -h 127.0.0.1 -U drfdai -c 'reload'

管理pgbouncer,

先登陆pgbouncer,然后运行管理命令

管理命令可以通过show help查看

pgbouncer=# show help;

NOTICE:  Console usage

DETAIL:

SHOW HELP|CONFIG|DATABASES|POOLS|CLIENTS|SERVERS|VERSION

SHOW STATS|FDS|SOCKETS|ACTIVE_SOCKETS|LISTS|MEM

SHOW DNS_HOSTS|DNS_ZONES

SET key = arg

RELOAD

PAUSE []

RESUME []

KILL 

SUSPEND

SHUTDOWN

SHOW

连接测试

连接write_db数据库

[postgres@drfdai ~]$ psql -h 127.0.0.1 -p 5433 -U drfdai write_db

Password for user drfdai:

psql (9.4.1)

Type "help" for help.

write_db=# \d

List of relations

Schema |  Name  | Type  |  Owner

--------+--------+-------+----------

public | table1 | table | postgres

(1 row)

write_db=#

连接连接池:

[postgres@drfdai ~]$ psql -h 127.0.0.1 -p 5433 -U drfdai pgbouncer                      Password for user drfdai:

psql (9.4.1, server 1.5.4/bouncer)

Type "help" for help.

pgbouncer=# show clients;

type |  user  | database  | state  |   addr    | port  | local_addr | local_port |    c

onnect_time     |    request_time     |    ptr    | link

------+--------+-----------+--------+-----------+-------+------------+------------+-----

----------------+---------------------+-----------+------

C    | drfdai | pgbouncer | active | 127.0.0.1 | 38453 | 127.0.0.1  |       5433 | 2016

-01-06 09:46:16 | 2016-01-06 09:46:41 | 0x11ac550 |

(1 row)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值