Buscando uma melhoria nos acessos da aplicação ao banco de dados, instalei o pgBouncer para configurar um pool de conexão. Não vou entrar como instalar o PostgreSQL.
Baixando a versão estável do pgBouncer.
Verifica se a dependência libevent está instalada, caso contrário instale.
Verificando dependência.
# yum list | grep libevent-dev
# yum install libevent-dev
Instalando o pgBouncer.
$ tar -zxvf pgbouncer-x.x.tar.gz
$ cd pgbouncer-x.x
Configurando instalação.
$ ./configure --prefix='eu escolhi o mesmo diretório de instalação do PostgreSQL'
Compilando instalação.
$ make
Instalando.
# make install
Copiando arquivo de configuração do pgBouncer e colando em /etc/pgbouncer.ini
# cp pgbouncer-x.x/pgbouncer.ini /etc/pgbouncer.ini
Editando o arquivo pgbouncer.ini
[databases]
# Porta que o banco de dados PostgreSQL está rodando.
* = port =5432
[pgbouncer]
# Arquivo log
logfile =
/var/log/postgresql/pgbouncer.log
pidfile =
/var/log/postgresql/pgbouncer.pid
# Local que o pgbouner vai escutar
listen_addr =
*
# Porta da qual irá rodar o pgBouncer
listen_port =
6432
# Socket
unix_socket_dir =
/tmp
# Metodo de autenticação
auth_type =
trust
# Local do arquivo de autenticação
auth_file =
/ides/pgbouncer/pgbouncer.auth
# Usuário do pgBouncer
admin_users =
postgres
stats_users =
postgres
# Modo pool -> apartir deste ponto vai muito da configuração do seu ambiente e aplicação.
pool_mode =
transaction
server_reset_query =
DISCARD ALL;
server_check_query =
select 1
server_check_delay =
10
max_client_conn =
100
default_pool_size =
20
log_connections =
1
log_disconnections =
1
log_pooler_errors =
1
Para criar o arquivo de senha você pode utilizar o comando a seguir.
postgres=# SELECT'"'||rolname||'"'||' "'||rolpassword||'"' FROM pg_authid;
Agora é só copiar a saída do comando e criar o arquivo como o modelo abaixo.
"user1"
"md544b5deffhu7972jdde786abf68002dd5fdd4d"
"user2"
"md52b20kk9813jk997ddlds45ha6b4der556ad03d8b27"
/localinstalação/bin/pgbouncer -d /etc/pgbouncer.ini
Nenhum comentário:
Postar um comentário