Capítulo 24. Tarefas rotineiras de manutenção de banco de dados

Índice

24.1. Limpeza de rotina
24.1.1. Noções básicas de limpeza
24.1.2. Recuperação de espaço em disco
24.1.3. Atualização das estatísticas do planejador
24.1.4. Atualização do mapa de visibilidade
24.1.5. Prevenção de falhas de reinício de ID de transação
24.1.6. Processo de limpeza automática
24.2. Reindexação de rotina
24.3. Manutenção de arquivo de registro

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 restauração.

A outra categoria principal de tarefa de manutenção é a limpeza (VACUUM) periódica do banco de dados. Esta atividade é discutida em Limpeza de rotina. Intimamente relacionado a isto 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). Isto é discutido em Manutenção de arquivo de registro.

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. Entretanto, a atenção adequada a estas tarefas contribuirá muito para garantir uma experiência agradável e produtiva com o sistema.