Política para Implantação das Rotinas de Manutenção do Banco de Dados Tactium
Sumário
Visão Geral
Este documento visa orientar a equipe de implantação na criação e manutenção das rotinas do plano de manutenção das bases de dados do Tactium. Tais como Jobs, Backups, CheckDB, CleanUP, Reindex, Stats.
- JOB – O JOB é uma forma de auxiliar na manutenção com tarefas que devem ser executadas diversas vezes iguais ou em uma determinada data em especial sem precisar da intervenção do DBA, por exemplo, a desfragmentação de uma tabela no domingo. Como no domingo ninguém estará na empresa pode-se agendar o trabalho para ser executado nesse período.
- Backup – Em informática, cópia de segurança é a cópia de dados de um dispositivo de armazenamento a outro para que possam ser restaurados em caso da perda dos dados originais, o que pode envolver apagamentos acidentais ou corrupção de dados.
- CleanUP – Remove informações residuais deixadas em páginas de banco de dados devido a rotinas de modificação de dados no SQL Server. sp_clean_db_free_space limpa todas as páginas em todos os arquivos do banco de dados.
- CheckDB – Verifica a integridade lógica e física de todos os objetos do banco de dados.
- Reindex – Recria um ou mais índices de uma tabela no banco de dados especificado.
- Stats – O otimizador de consulta usa estatísticas para criar planos de consulta que melhoram o desempenho das consultas. Para a maioria das consultas, o otimizador de consulta já gera as estatísticas necessárias para um plano de consulta de alta qualidade.
Premissas
Abaixo irei listar todas as premissas necessárias para iniciar a criação das rotinas de manutenção das bases de dados do Tactium.
SQL Managerment Studio
O SQL Server Management Studio é um aplicativo de software iniciado com o Microsoft SQL Server 2005 usado para configurar, gerenciar e administrar todos os componentes do Microsoft SQL Server.
SQL Server Agent
O SQL Server Agent é um componente do Microsoft SQL Server que agenda trabalhos e manipula outras tarefas automatizadas. Ele é executado como um serviço do Windows e pode ser iniciado automaticamente quando o sistema inicializar ou pode ser iniciado manualmente.
Obs: Note que existe um botão de player no ícone do SQL SERVER AGENT, sempre se atentar para saber se o mesmo está sendo executado.
Restrições e segurança
Para criar um JOB, o usuário deve ser membro de uma das funções de banco de dados fixas do SQL Server Agent ou da função de servidor fixa sysadmin . Um JOB só pode ser editado por seu proprietário ou por membros da função sysadmin .
Você precisa ser um administrador do sistema para alterar o proprietário de um trabalho.
Por questão de segurança, apenas o proprietário do trabalho ou um membro da função sysadmin pode alterar a definição do trabalho. Somente os membros da função de servidor fixa sysadmin podem atribuir a propriedade do trabalho a outros usuários, bem como executar qualquer trabalho, independentemente de seu proprietário.
Rotinas de Manutenção Banco de Dados
Primeiro passo
O primeiro passo para criar a rotina de manutenção é criar um novo plano. Para isso é precisso clicar em “Managerment” >> com o botão direito em “Maintenance Plans” >> “New Maintenance Plans” e nomear o plano.
Segundo passo
O segundo passo é adicionar os subplanos necessários, iniciando pelo de BackUP.
Feito isso é preciso determinar a ação que o BackUP deverá exercer. Deve-se clicar em “Toolbox” (no canto superior esquedo) e inserir a ação “Back Up Database Task”.
Para editar a ação adicionada basta clicar na mesma. No caso do subplano de BackUp é preciso modificar três itens dentro da ação, o primeiro é selecionar as bases que são do seu interesse em “Database”.
Após isso em “Destination” clicar nos três pontos (conforme destacado na imagem abaixo) e indicar onde devem ser armazenados pd Backups, no caso o local selecionado foi “Bases Tactium”.
Por fim, em “Options” marcar “compress backup” e “Verify backup integrity”
O próximo subplano que deve ser criado é o “Reindex” que recria um ou mais índices de uma tabela no banco de dados especificado. É importante ressaltar que deve ser criando um Reindex para cada base selecionada anteriormente.
Após criado o subplano, deve determinar a ação do Reindex, que no caso deve ser “Reorganize Index Task”.
Em “Database” selecionar a base do Reindex, no caso da imagem abaixo foi criado o subplano com o nome Reindex-Tactium por isso a base selecionada foi a “Tactium”.
Relembrando que deve ser criando um Reindex para cada base!
O próximo Subplano deve ser o “CheckDB” que irá checar a integridade das bases.
Determinar a ação do CheckDB que deve ser “Check Database Integrity Task”.
Dentro da ação, em “Database”, selecionar as bases que devem ser checadas.
O próximo subplano que deve ser criado é o “Stats” que serve para realizar as limpezas das estatísticas.
Após cria-lo, determinar a ação que deve ser “Update Statistics Task”.
Dentro da ação, em “Database”, selecionar as bases que lhe interessam.
O último subplano à ser criado é o CleanUP que irá limpar o lixo que restar ao fim do processo.
Em seguida determinar a ação, que deve ser “History Cleanup Task”.
Terceiro passo
O terceiro passo, após finalizar o cadastro de todos os subplanos, é definir o agendamento dos mesmos. Clicando no calendário destacado na imagem abaixo.
Obs.: Normalmente todos os subplanos devem ser executados fora de horário do expediente do cliente.
O BackUP geralmente é feito uma vez por dia (isso é definido em “Frenquency”) e em um horário que seja adequado, no caso abaixo, às 18:05 horas (Dezoito horas e cinco minutos).
No agendamento do Reindex, é importante que todos eles se iniciem no mesmo dia e horário, no caso abaixo, aos sábados às 14:10 horas.
O agendamento do CheckDB também é feito para ser realizado uma vez por semana, no caso abaixo aos sábados às 14:10 horas, junto com os Reindex.
O agendamento dos Stats, deve ser executado uma vez por dia, fora de horário.
Por último, o agendamento do CleanUP, que deve ser realizado todos os dias e no caso abaixo às 18:10 horas.
Por fim, após executar todos os passos, basta salvar e a rotina será carregada dentro dos Jobs.