Capítulo 25. Tarefas de manutenção de rotina

Índice

25.1. Limpeza de rotina
25.1.1. Noções básicas de limpeza
25.1.2. Recuperação de espaço em disco
25.1.3. Atualização das estatísticas do planejador
25.1.4. Atualização do mapa de visibilidade
25.1.5. Prevenção de falhas de reinício de ID de transação
25.1.6. O daemon autovacuum
25.2. Reindexação de rotina
25.3. Manutenção do arquivo de log

O PostgreSQL, como qualquer software de banco de dados, exige que certas tarefas sejam executadas regularmente para atingir o desempenho ideal. As tarefas discutidas aqui são necessárias, mas são repetitivas por natureza, podendo ser facilmente automatizadas usando ferramentas padrão, como comandos executados pelo cron, ou o Gerenciador de tarefas do Windows. É responsabilidade do administrador de banco de dados (DBA) configurar os scripts apropriados, e verificar se são executados com êxito.

Uma tarefa de manutenção óbvia é a criação de cópias de segurança dos dados em uma programação regular. Sem uma cópia de segurança recente, não há chance de recuperação após um desastre (falha de disco, incêndio, remoção por engano de uma tabela crítica, etc.). Os mecanismos de cópia de segurança e recuperação disponíveis no PostgreSQL são discutidos em detalhe em Cópia de segurança e recuperação.

A outra categoria principal de tarefa de manutenção é a limpeza (VACUUM) periódica do banco de dados. Essa atividade é discutida em Limpeza de rotina. Intimamente relacionado a isso está a atualização das estatísticas usadas pelo planejador de consultas, conforme discutido em Atualização das estatísticas do planejador.

Outra tarefa que pode precisar de atenção periódica, é o gerenciamento de arquivos de registro do servidor (log). Isso é discutido em Manutenção do arquivo de log [149].

O script check_postgres está disponível para monitorar a integridade do banco de dados e relatar condições incomuns. O script check_postgres integra-se com o Nagios e o MRTG, mas também pode ser executado de forma independente.

O PostgreSQL demanda pouca manutenção em comparação com alguns outros sistemas de gerenciamento de banco de dados. No entanto, a atenção adequada a essas tarefas contribuirá muito para garantir uma experiência agradável e produtiva com o sistema.



[149] Existem dois tipos de log distintos no PostgreSQL: o Write-Ahead Logging (WAL), que registra as transações, e o log propriamente dito, que registra os eventos ocorridos no PostgreSQL num formato legível por humanos. (N. T.)

Contato

CSS válido!