Nesta página serão mostradas os procedimentos para a criação de um plano de manutenção (Maintenance Plan) nos bancos de dados do SQL Server, usando o Assistente de Plano de Manutenção.
Plano de Manutenção (Maintenance Plan)
O Assistente de Plano de Manutenção (Maintenance Plan Wizard) cria uma ou mais tarefas do SQL Server Agent que executam as tarefas nos servidores locais ou nos servidores de destino em um ambiente com vários servidores. A execução pode ocorrer em intervalos marcados ou por demanda.
Realizando Agendamento de Plano de Manutenção
Para criar um plano de manutenção usando o Assistente de Plano de Manutenção
-
No Object Explorer, dê duplo clique no servidor em que você deseja criar um plano de manutenção.
-
Dê duplo clique na pasta Management .
-
Clique com o botão direito do mouse na pasta Management Plan e selecione Management Plan Wizard.
-
Siga as etapas abaixo do assistente para criar um plano de manutenção.
Não é possível realizar agendamentos e nem plano de manutenção por este passo a passo abaixo no SQL Server Express, pois o SQL Agent e o Maintenance Plan não são disponibilizados para esta edição.
1 – Na primeira página do SQL Server Maintenance Plan Wizard, clique em Next.
2 – A próxima etapa, será a tela Select Plan Properties (Selecione as Propriedades do Plano):
– No campo Name, insira o nome do plano de manutenção que está sendo criado.
– Na caixa de texto Description, descreva brevemente o plano de manutenção.
– Selecione em Run As, a credencial usada pelo Microsoft SQL Server Agent ao executar o plano de manutenção.
– Selecione Single schedule for the entire plan or no schedule para especificar a agenda recorrente do plano de manutenção.
– Clique em Change, e será aberta a janela New Job para realizar o agendamento da execução do plano.
Informe um nome para o Job Schedule, no campo Name.
Frequency
Altere a opção no “Occurs”, de WeeKly para Daily. Para que a manutenção seja feito diariamente, ao invés de semanal com estava definido.
Daily frequency
Altere a opção em “Occurs once at:”, para um horário que achar conveniente, de preferencia em um período em que o sistema esteja inoperante na empresa.
Clique em OK, para concluir
– Voltando a tela anterio, clique em Next.
3 – A próxima página será Select Maintenance Tasks para selecionar selecionar as tarefas de manutenção.
– Selecione uma ou mais tarefas de manutenção que devem ser adicionadas ao plano. Quando tiver selecionado todas as tarefas necessárias, clique em Next.
As tarefas selecionadas aqui determinarão quais páginas deverão ser preenchidas após a página Select Maintenance Task Order que virá em seguida.
4 – Na página Selecionar Ordem da Tarefa de Manutenção , selecione uma tarefa e clique em Mover para Cima… ou Mover para Baixo… para alterar sua ordem de execução. Ao concluir ou se você estiver satisfeito com a ordem atual das tarefas, clique em Next para avançar.
5 – Após será necessário configurar cada tarefa (task) selecionada e atribuir os Databases onde elas serão executadas, abaixo segue uma lista breve das funções de cada task existente no Maintenance Plain.
– Check Database Integrity
Essa tarefa garante que todos os problemas de integridade com o banco de dados sejam relatados, permitindo assim que eles sejam tratados posteriormente por um administrador do sistema ou proprietário do banco de dados.
– Shrink Database
Esta tarefa tenta reduzir o tamanho dos bancos de dados selecionados usando a instrução DBCC SHRINKDATABASE
com a opção NOTRUNCATE
ou TRUNCATEONLY.
– Reorganize Database
Esta tarefa moverá páginas de índice para uma ordem de pesquisa mais eficiente, usando a instrução ALTER INDEX … REORGANIZE
.
– Rebuild Index
Esta tarefa recria índices utilizando as instrução ALTER INDEX … REBUILD PARTITION
.
– Update Statistics
Esta tarefa atualiza tabelas e estatísticas de índices, usando a instrução UPDATE STATISTICS
.
– Clean Up History
Esta tarefa descartar o histórico de tarefas antigo do Database selecionado. Essa tarefa utiliza as instruções EXEC sp_purge_jobhistory
, EXEC sp_maintplan_delete_log
e EXEC
sp_delete_backuphistory
para remover informações de histórico das tabelas do msdb.
– Execute SQL Server Agent Job
Escolha os trabalhos a serem executados. Essa opção não estará disponível se você não tiver nenhum trabalho de SQL Agent. Esta tarefa utiliza a instrução EXEC sp_start_job
.
– Back Up Database (Full)
Esta tarefa executa um backup completo dos bancos selecionados, esta opção utiliza a instrução BACKUP DATABASE
.
– Back Up Database (Differential)
Esta tarefa executa um backup parcial dos bancos selecionados, esta tarefa utiliza a instrução BACKUP DATABASE … WITH DIFFERENTIAL
.
– Back Up Database (Transaction Log)
Esta tarefa executa um backup de um log de transações. Esta tarefa usa a instrução BACKUP LOG
. Para obter mais informações
– Maintenance Cleanup Task
Nesta tarefa deverá ser especificado os tipos de arquivos que devem ser excluídos como parte do plano de manutenção, inclusive relatórios de texto criados por planos de manutenção e arquivos de backup de banco de dados. Esta tarefa usa a instrução EXEC xp_delete_file
.
6 – Ao concluir as definições das tarefas, clique em Finish para encerrar o Maintenance Plan.
7 -Será exibido o processo de criação dos planos de manutenção dos bancos de dados, ao encerrar o processo poderá ser visualizado o relatório clicando em: Report >> View Report, e também é possível salvar, copiar e enviar por email o relatório. Para fechar a janela clique em Close.
Diminuição do banco de dados (Shrink)
O Shrink é um recurso que nos permite reduzir o tamanho dos arquivos do banco de dados. Esta operação pode ser feita em conjunto (banco de dados inteiro), ou em um arquivo específico (dados ou log).
O Shrink é um recurso que podemos usar para mover as páginas do arquivo de dados do SQL Server do final do arquivo para o começo, podendo após esse processo, devolver o espaço economizado para o sistema operacional fazer o que quiser com ele, inclusive alocar para outro serviço ou arquivo.
Local para armazenamento dos agendamentos
Para armazenar os dados de forma mais organizada siga os seguintes passos:
1 – Crie na dentro da pasta MSSQL uma pasta Agendamentos, ex: C:MSSQLAgendamentos;
2 – Dentro da pasta Agendamentos, crie dois arquivos através do bloco de notas:
AgendaLimpar.bat
LimpezaLog.sql
Arquivos: Abra o bloco de notas e edite os arquivos: AgendaLimpar.bat e LimpezaLog.sql conforme abaixo:
AgendaLimpar.bat
osql -E -S”<<ServidorSQLExpress>>” -i”<<C:MSSQLAgendamentosLimparLog.sql>>” Exit
<<ServidorSQLExpress>> deve ser substituído pelo nome do servidor de dados instância (caso haja instância).
LimparLog.sql
DBCC shrinkdatabase(N’<<BancoDeDados>>‘)
<<BancoDeDados>> deve ser substituído pelo nome do banco de dados que será reduzido
Agendador de Tarefas do Windows