pgbouncer-install

简介: pgbouncer install

pgbouncer-install

 

前言

 

   每次应用程序和postgres连接,都会克隆出一个服务进程来为应用程序服务,在频繁的创建和销毁进程,会耗费比较多的资源。而pgbouncer会把与后端postgresql数据库的连接缓存住,当有前端请求时,只为分配一个空闲的连接给前端程序使用,这样就降低了资源的消耗。

 

要求

 

软件:pgbouncer-1.5.5.tar.gzlibevent-2.0.22-stable.tar.gz

 

 

安装

 

1、上传软件到opt并解压

 

# tar xvf libevent-2.0.22-stable.tar.gz

# tar xvf pgbouncer-1.5.5.tar.gz

 

2、安装libevent

 

# ./configure --prefix=/home/postgres/libevent

# make

# make install

 

 

3、安装pgbouncer

 

# ./configure --prefix=/home/postgres/pgbouncer/ --with-libevent=/home/postgres/libevent/

# make

# make install

 

 

4、配置.bash_profile,修改文件权限

 

 

# cp /opt/pgbouncer-1.5.5/etc/pgbouncer.ini /home/postgres/pgbouncer/

 

# chown -R postgres:postgres pgbouncer/

# chown -R postgres:postgres libevent/

 

# su - postgres

$ vim .bash_profile

 

export LD_LIBRARY_PATH=/home/postgres/libevent/lib:$LD_LIBRARY_PATH

 

5、修改配置文件pgbouncer.ini文件并参考该文件要求创建userlist.txt

 

$ vim pgbouncer.ini

 

[databases]

postgres = host=localhost port=5432 dbname=postgres user=postgres password=postgres connect_query='SELECT 1'

 

[pgbouncer]

logfile = /home/postgres/pgbouncer/pgbouncer.log

pidfile = /home/postgres/pgbouncer/pgbouncer.pid

listen_addr = *

listen_port = 6432

auth_type = trust

auth_file = /home/postgres/pgbouncer/userlist.txt

pool_mode = transaction

server_reset_query = DISCARD ALL

max_client_conn = 100

default_pool_size = 20

 

 

$ vim userlist.txt

 

"postgres" "postgres"

 

 

 

6、启动pgbouncer

 

./pgbouncer  -d /home/postgres/pgbouncer/pgbouncer.ini

 

7、登录

 

$ psql -p 6432 postgres

 

8、停止pgbouncer

 

$ cat /home/postgres/pgbouncer/pgbouncer.pid

$ kill number

 

 

9、查看连接池信息

 

$ psql -p 6432 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 [<db>]

RESUME [<db>]

KILL <db>

SUSPEND

SHUTDOWN

SHOW

 

=# show clients;

 

=# show pools;

 

 

 

 

报错信息

 

error 1:

[postgres@postgres93 bin]$ ./pgbouncer -d /home/postgres/pgbouncer/pgbouncer.ini

./pgbouncer: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

 

[solution]

# su - postgres

$ vim .bash_profile

 

export LD_LIBRARY_PATH=/home/postgres/libevent/lib:$LD_LIBRARY_PATH

 

error 2:

[postgres@postgres93 ~]$ psql -p 6432 pgbouncer

psql: ERROR:  not allowed

 

[solution]

 

$ vim pgbouncer.init

admin_users = postgres

 

需要重启pgbouncer

 

$ psql -p 6432 pgbouncer

 

 

 

参考文档:

http://pgbouncer.github.io/downloads/

https://yq.aliyun.com/articles/43328

http://www.bubuko.com/infodetail-1203143.html

http://blog.csdn.net/lk_db/article/details/77939005?locationNum=8&fps=1

 

目录
相关文章
|
缓存 关系型数据库 MySQL
MariaDB的安装与配置
MariaDB的安装与配置
1081 0
|
关系型数据库 Linux 数据库
|
8月前
|
存储 关系型数据库 MySQL
源码包安装mariadb
**MariaDB**是MySQL的一个开源分支,由社区维护,提供高性能、安全且与MySQL高度兼容的数据库解决方案。它使用XtraDB和Maria存储引擎替代InnoDB和MyISAM。特点是开源、高性能、兼容性和安全性,广泛应用于各种场景和操作系统。在Redhat 9.2上安装MariaDB 10.6.17,首先配置yum源,检查现有MySQL/MariaDB,安装依赖包,下载源码,解压并配置编译环境,使用cmake和make编译安装,初始化数据库,创建用户,设置密码,添加启动脚本至开机自启,并执行安全初始化设置。
175 0
|
关系型数据库 MySQL Linux
yum install mysql-community-server 出现类似报错:Requires: libtirpc.so.3()(64bit)
原因:Linux 版本与下载的 Mysql 的yum 库版本不兼容,例如 Centos7 安装 el8 版本的 Mysql;
yum install mysql-community-server 出现类似报错:Requires: libtirpc.so.3()(64bit)
|
SQL 存储 网络协议
RH358配置MariaDB SQL数据库--安装MariaDB数据库
RH358配置MariaDB SQL数据库--安装MariaDB数据库
273 0
RH358配置MariaDB SQL数据库--安装MariaDB数据库
|
关系型数据库 数据库 数据安全/隐私保护
|
MySQL 关系型数据库 PHP
MariaDB 的安装与配置
这个是本人最早接触的一篇数据库配置,也是让我入门Linux基础环境搭建的一篇,有时候忘了命令也会参考里面的内容 # rpm -ivh 12-cmake-2.8.11.1-5.
1432 0
|
关系型数据库 MySQL 数据安全/隐私保护
Mariadb安装之后的各种设置
Mariadb安装之后的各种设置 1、启动MariaDB 安装完成MariaDB,首先启动MariaDB,两条命令都可以 systemctl start mariadb 或者 service mariadb start 设置开机启动 systemctl enable mariadb .
2029 0
|
关系型数据库
下载安装MariaDB Galera 10.1
因为无法访问外网, 配置官网的yum无法下载MariaDB Galera(在MariaDB 10.1 及之后内置了Galera, 不像之前那样需要独立安装) 需要在下载的包 MariaDB-10.1.31-centos73-x86_64-client.
1497 0
|
关系型数据库 MySQL 数据库

热门文章

最新文章