Pular para o conteúdo

PostgreSQL básico - Testado e pronto para ser usado

Veremos tópicos relacionados com a instalação, configuração, backup, restauração, otimização e manuseio do banco de dados PostgreSQL. Espero que aproveitem... Vamos lá.
Thiago Henrique F. Margonar thiagomargonar
Hits: 25.303 Categoria: Banco de Dados Subcategoria: Postgres
  • Indicar
  • Impressora
  • Denunciar

Parte 5: Otimizando o PostgreSQL

Vou mostrar cada opção válida no arquivo apresentado abaixo.

# vim /opt/Postgres/versão/data postgresql.conf

Procure as seguintes linhas:

shared_buffers = 32MB # Uma boa configuração seria entre 8% a 12% do total de RAM do servidor.

work_mem = 2048 # Este parâmetro configura o tamanho em KBytes utilizado no servidor para cada conexão efetivada ao SGBD (Configura 2 MBytes de RAM do servidor para operações de ORDER BY, CREATE INDEX e JOIN disponíveis para cada conexão ao banco.)

maintenance_work_mem = 16384 # O total de memória configurada neste parâmetro é utilizado somente durante as operações de manutenção do banco (como VACUUM e REINDEX), sendo liberada durante o seu uso normal. Se o seu processo de VACUUM está muito custoso, tente aumentar o valor deste parâmetro.

max_fsm_pages = 120000 # Realiza a procura por até 120.000 páginas sujas na limpeza pelo VACUUM utilizando cerca de 71 Kb de RAM para isto.

wal_buffers = 64 # Seta para 512 KBytes a memória destinada ao buffer de escrita no WAL.

effective_cache_size = 32768 # Seta o cache de dados do PostgreSQL para 256 MBytes de RAM.

random_page_cost = 2 # Diminui o tempo para seleção aleatória de páginas do otimizador de consultas.

Fonte: Otimizando bancos PostgreSQL - Parte 01

Desmarque as linhas abaixo para inicializar o autovacuum:

#autovacuum = on

#log_autovacuum_min_duration = -1
#autovacuum_max_workers = 3
#autovacuum_naptime = 1min
#autovacuum_vacuum_threshold = 50

#autovacuum_analyze_threshold = 50
#autovacuum_vacuum_scale_factor = 0.2
#autovacuum_analyze_scale_factor = 0.1
#autovacuum_freeze_max_age = 200000000
#autovacuum_vacuum_cost_delay = 20
# autovacuum, -1 means use
# vacuum_cost_delay
#autovacuum_vacuum_cost_limit = -1

   1. Características
   2. Instalando
   3. Manuseio do banco
   4. pg_dump pg_restore e psql
   5. Otimizando o PostgreSQL
Nenhum artigo encontrado.

Automação comercial livre no Slackware 12

Checklist de performance do PostgreSQL 8.0

PostgreSQL 9.4 - Replicação com slots

PostgreSQL: SGBDOR

Monitorando Banco de Dados Postgres com ZABBIX

#1 Comentário enviado por rafaelbernini em 08/04/2014 - 10:32h
Sensacional o artigo, uso PostgreSQL a um bom tempo, e a versão 8.x é minha favorita no PHP, e agora ando me arriscando junto com java, ta de parabéns, muito bom artigo.

Abs
#2 Comentário enviado por diego.agudo em 14/04/2014 - 16:47h
Esta parte de tuning do postgresql tem que tomar muito, mas muito cuidado mesmo... Não basta saber quanto de RAM você possui e já sair setando os valores e talz, o buraco é bem mais embaixo.
Esta outra parte de ativar o autovacuum eu particularmente prefiro deixar desativado e implementar um cron para executar o vacuum de madrugada.

Contribuir com comentário

Entre na sua conta para comentar.