Plano de Manutenção para Microsoft SQL Server 2005


Olá Amigos

A manutenção de um banco de dados representa um conjunto de atividades críticas sobre a responsabilidade do DBA. De nada adiantaria, um excelente projeto de banco de dados, um hardware com capacidade além da necessária e aplicações bem desenvolvidas se o banco de dados não tiver uma rotina de manutenção. Cedo ou tarde, as páginas de dados (e de índices) ficarão desfragmentadas, as estatísticas ficarão desatualizadas, backups terão de ser feitos, arquivos deverão ser compactados, etc. O plano de manutenção (Maintenance Plan) permite que essas e outras tarefas possam ser realizadas da forma mais automática possível. A automatização de tarefas de manutenção através do plano de manutenção pode trazer alguns benefícios:

  • Redução da carga de trabalho:  Automatizar as tarefas de manutenção permitem que diversas tarefas sejam executadas com o mínimo de supervisão. Isso fará com que o DBA tenha mais tempo para outras tarefas como planejamento da capacidade (Capacity Planning), melhoria do desempenho do banco de dados (Performance Tuning), auditoria do banco de dados, etc.
  • Diminuição do “Esquecimento”:Quando tarefas são automatizadas, é menos provável que haja um “esquecimento” de executar alguma tarefa. Tanto as tarefas críticas e não críticas estarão presentes no plano de manutenção e serão executadas.
  • Minimização de erro humano:Se o plano de manutenção for criado adequadamente, a possibilidade de erro humano é praticamente eliminada. Erros como banco incorreto, ordem errada de aplicação de scripts, etc por uma distração ou negligência são minimizados.
  • Proatividade:  O plano de manutenção pode, através de seus relatórios, fornecer ao DBA informações sobre problemas em potencial. Essas informações podem ser valiosas para que o DBA faça intervenções no banco de dados antes que esses problemas em potencial tornem-se realidade.
Entendendo o Plano de Manutenção

O plano de manutenção é um pacote SSIS (SQL Server Integration Services) que agrupa determinadas tarefas para execução. Ele pode ser construído manualmente especificando cada tarefa ou através do assistente (Wizard). Na maioria das situações, a utilização do assistente é suficiente. A criação do plano de manutenção de forma manual é geralmente utilizada para planos de manutenção mais específicos. Ainda assim nada impede que você inicie a construção pelo assistente e depois o personalize.

Pré-requisitos

Novamente faço referência ao banco de dados de exemplo do SQL Server 2005, o AdventureWorks. Quem ainda não o possui, poderá instalá-lo a partir do CD de instalação do SQL Server 2005 ou obtê-lo no site da Microsoft. Na sessão de links relacionados está disponibilizada a URL para obter esse banco de dados. É necessário também que o serviço do SQL Agent esteja iniciado. Esse serviço é o responsável pela execução de tarefas agendadas (entre elas, as definidas no plano de manutenção). Ele pode ser iniciado de várias maneiras. Uma dessas maneiras é através do SQL Server Configuration Manager conforme a figura abaixo. Estou utilizando um servidor local (MAIA) com uma instância nomeada (SQL2005). O serviço SQL Server da instância SQL2005 já está iniciado.

Para criar um plano, precisa ter permissão da role Sysadmin

Primeiramente, Inicie o SQL SERVER AGENT

clip_image002

Abra o SQL server management Studio e vá em Management -> Maintenence plan

clip_image004

Dê um nome ao plano, e clique em Change

clip_image005

Selecione de quanto em quanto tempo deseja que execute

clip_image007

Selecione as opções abaixo

clip_image008

Deixe na seguinte ordem

clip_image009

Selecione as bases que deseja para esse plano de Manutenção

clip_image010

A primeira tarefa escolhida no plano de manutenção foi a reconstrução dos índices. Com a utilização do banco de dados (principalmente com as instruções de INSERT, UPDATE e DELETE), os índices começam a ficar desfragmentados. Para que haja a utilização mais eficiente possível desses índices é necessário a reorganização e, dependendo da situação, até a reconstrução dos índices. É possível reconstruir índices de bancos de dados de sistema (MASTER, MSDB, MODEL e TEMPDB) e bancos de usuário. Se for escolhido um único banco de dados, é possível definir até em que tabelas específicas o índice deve ser reconstruído. Em Databases escolha “All Databases” e marque as opções “Pad Index” e “Sort Results In TempDB” e clique em NEXT.

A segunda tarefa escolhida no plano de manutenção foi a atualização das estatísticas. Além dos índices, o SQL Server utiliza algumas estatísticas para otimizar os planos de execução que podem proporcionar consultas mais eficientes. Em Databases escolha “All databases” e em Update escolha “All existing statistics” e clique em NEXT.

clip_image011

A terceira tarefa escolhida no plano de manutenção foi a checagem de integridade do banco de dados. As estruturas físicas do banco de dados (páginas, extensões, etc) podem corromper-se com o tempo. Para detectar se existem estruturas corrompidas, essa tarefa executa alguns comandos de checagem (DBCC). A chegagem dessas estruturas pode detectar que existem problemas nas estruturas físicas do SQL Server bem como evitar que esses problemas ocorram. Selecione “All databases” e deixe marcada a opção “Include Indexes” e clique em NEXT.

clip_image012

A quarta tarefa escolhida no plano de manutenção foi a compactação de bancos de dados. Os bancos de dados crescem com a inserção de novos dados. Mesmo após a exclusão de objetos (principalmente tabelas) e dados, o tamanho do banco de dados não diminui automaticamente. A tarefa de compactação se encarrega de diminuir o tamanho do banco de dados até o mínimo necessário e opcionalmente deixar um espaço adicional livre. Em Databases marque a opção “All databases”. Altere o percentual de espaço livre para 20%. Deixe marcada a opção “Return freed space to operating system” e clique em NEXT.

clip_image013

quinta e última tarefa escolhida é o backup. Essa é sem dúvida uma das tarefas mais importante de um plano de manutenção. Existem algums tipos de backup (Full, Diferencial, Log e Filegroup). Nesse caso está sendo definido apenas o backup completo dos bancos de dados (FULL). Em Databases selecione “All Databases”. É possível ainda configurar outras opções (extensão do arquivo de backup, local, etc). Mantenha as opções padrões e clique em NEXT.

clip_image014

Após clicar em finish será criado o plano

clip_image015

Sobre Julio Vaz

I'm a results-driven IT professional on consulting for integration projects with extensive experience in the engineering, administration and support. Direct experience with customer relationships, complex problem troubleshooting, implementation, optimization, technology advisor and training deliveries. Always interested in professional growth as well as high-quality service delivery. Specialties: Office 365. Windows Intune. Windows Azure. Microsoft Windows Server and Active Directory Microsoft Exchange Server 2000/2003/2007/2010, 2013 Windows Virtualization: Hyper-V Windows server 2008, 2008 R2, 2012, 2012 R2. Microsoft Isa Server 2000, Isa Server 2004, Isa Server 2006. Microsoft Forefront TMG 2010. Microsoft Project Server 2007/2010, 2013 Microsoft SharePoint 2007/2010, 2013 Documentation of the computing environment and services. Elaboration of technical procedures. Elaboration of proposals and projects. Management and training of support staff. Implementation and maintenance of security and backup policies. Implementation, administration and migration from Microsoft . Windows NT, Windows 2000 Server, Windows Server 2003 R2, Windows Server 2008 R2, Windows Server 2012 R2 Implementation and migration from Microsoft Office Communications Server 2007 Implementation and migration from Microsoft Lync Server 2010, 2013. Implementation and migration from Microsoft Exchange Server 2000, 2003 and 2007, 2010, 2013. Implementation and migration from Microsoft Isa Server 2000, 2004 and 2006, Forefront TMG Implementation Microsoft System Center 2012 R2 - SCCM, SCOM, DPM. Migration of servers and domains
Esse post foi publicado em Microsoft SQL Server 2005. Bookmark o link permanente.

3 respostas para Plano de Manutenção para Microsoft SQL Server 2005

  1. Julio Vaz disse:

    Cesar, muito legal suas dicas sobre SQL, parabéns

    Curtido por 1 pessoa

  2. Sergio disse:

    Excelente trabalho.

    Curtir

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s