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á.
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:
Fonte: Otimizando bancos PostgreSQL - Parte 01
Desmarque as linhas abaixo para inicializar o autovacuum:
# 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.
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
#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
Abs