Limpar arquivos de backup (Windows SharePoint Services 3.0)

A maioria das diretivas de retenção de armazenamento de dados e de backup permite a limpeza periódica de backups antigos ou obsoletos. É muito importante que você retenha backups pelo tempo necessário. No entanto, se não remover periodicamente ou enviar os arquivos de backup desatualizados para o arquivo morto, os dispositivos de armazenamento de backup de curto prazo ficarão cheios rapidamente. Embora os Produtos e Tecnologias do SharePoint não ofereçam uma função de remoção de backup automatizada, você poderá implementar um script simples para executar essa tarefa.

Configurar a remoção de backup periódico

Os procedimentos a seguir incluem um exemplo de script do Microsoft Visual Basic que pode ser usado e editado, conforme o necessário, para fazer o seguinte:

  • Ao usar um único comando, localize e exclua arquivos de backup mais antigos do que um período de tempo especificado.

  • Atualizar o arquivo de manifesto de backup (spbrtoc.xml) para remover registros dos arquivos excluídos.

  • Criar um arquivo de log da atividade de remoção de backup.

  • Trabalhe com o agendador de tarefas para automatizar a remoção periódica de arquivos de backup obsoletos.

Aviso

O uso do código deste artigo será de sua responsabilidade.

A Microsoft oferece exemplos de programação somente para ilustração, sem garantias expressas ou implícitas. Isso inclui, mas não está limitado às garantias implícitas de qualidade comercial ou conformidade para uma determinada finalidade. Este artigo supõe que você conheça a linguagem de programação que está sendo demonstrada e as ferramentas usadas nos processos de criação e depuração. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento. No entanto, eles não editarão este exemplo para fornecer funcionalidade adicional ou para criar procedimentos que atendam aos seus requisitos específicos.

Se sua experiência de programação for limitada, entre em contato com um Microsoft Certified Partner ou com a linha de consultoria não gratuita da Microsoft no número (800) 936-5200. Para obter mais informações sobre Microsoft Certified Partners, consulte o site do Microsoft Partner Program (https://go.microsoft.com/fwlink/?linkid=128105&clcid=0x416).
Para obter mais informações sobre as opções de suporte disponíveis e sobre como entrar em contato com a Microsoft, consulte o site de Ajuda e Suporte da Microsoft (https://go.microsoft.com/fwlink/?linkid=128109&clcid=0x416).

Para realizar essa tarefa, é necessário:

  • Um editor e depurador de scripts, como o Microsoft Visual Studio 2008 (recomendado), ou um editor de texto, como o Bloco de Notas.

  • Experiência com linguagens de script.

  • Os arquivos de backup devem ser armazenados em dispositivos que possam ser acessados na rede e que sejam funcionais.

  • Uma diretiva clara de retenção de backup que especifica por quanto tempo é preciso manter os arquivos de backup.

Importante

Para concluir o procedimento abaixo, é preciso pelo menos fazer parte do grupo Administradores do computador local.

Escreva um script de remoção de backup

  1. Crie uma pasta no computador que executará a tarefa de remoção de backup. Essa pasta conterá o script de remoção de backup e o arquivo de log.

  2. Inicie o editor de scripts e, depois, copie e cole o seguinte exemplo de código na janela de edição:

    '       Title: BackupCleanUp
    ' Description: Deletes SharePoint 2007 backups older than a specified 
    '              number of days and removes them from the backup history. 
    
    Dim nNumberOfDays
    Dim strTOCFile
    Dim dtDeleteDate
    
    Set objXML = CreateObject("Microsoft.XMLDOM")
    Set objFS  = CreateObject("Scripting.FileSystemObject")
    Set objLog = objFS.OpenTextFile("BackupCleanUp.log",8,true)
    
    ' Validate Command Line Arguments and Initialize Data
    If WScript.Arguments.Count = 2 Then
        If IsNumeric(WScript.Arguments(0)) Then   
            nNumberOfDays = CInt(WScript.Arguments(0))
            dtDeleteDate = DateAdd("d",nNumberOfDays*-1,Now)
        Else
            WScript.Echo "<NumberOfDays> must be an integer value."
        End If
            strTOCFile = WScript.Arguments(1)
    Else
        WScript.Echo "Usage: BackupCleanUp <NumberOfDays> <PathToTOC>"
        WScript.Quit
    End If
    
    objLog.WriteLine(Now() &vbTab& "Start: Clean up backups older than " &nNumberOfDays& " days from " &strTOCFile& ".")
    
    ' Load SharePoint Backup and Restore TOC File
    objXML.Async = false
    objXML.Load(strTOCFile)
    
    If objXML.ParseError.ErrorCode <> 0 Then
        objLog.WriteLine(Now() &vbTab& "Error: Could not load the SharePoint Backup / Restore History." &vbCrLf&_
                         Now() &vbTab& "Reason: " &objXML.ParseError.Reason& ".") 
        WScript.Quit
    End If
    
    ' Delete Backup Nodes Older Than Deletion Date
    For Each objNode in objXML.DocumentElement.ChildNodes
        If CDate(objNode.SelectSingleNode("SPFinishTime").Text) < dtDeleteDate Then
            If objNode.SelectSingleNode("SPIsBackup").Text = "True" Then
                objFS.DeleteFolder(objNode.SelectSingleNode("SPBackupDirectory").Text)
                objLog.WriteLine(Now() &vbTab& "Deleted: " &objNode.SelectSingleNode("SPBackupDirectory").Text& ".")
                objXML.DocumentElement.RemoveChild(objNode)
            End If     
        End If
    Next
    
    ' Save XML File With Old Nodes Removed
    objXML.Save(strTOCFile)
    objLog.WriteLine(Now() &vbTab& "Finish: Completed backup clean up.")
    

    Você pode editar o script conforme o necessário para atender aos requisitos de rede, equipamento, diretivas de retenção ou contratos de serviço.

  3. Salve o arquivo como BackUpCleanUp.vbs na pasta criada anteriormente.

Importante

Para concluir o procedimento abaixo, é preciso pelo menos fazer parte do grupo Administradores do computador local.

Execute o script de remoção de backup

  1. Em um prompt de comando, mude para o diretório que contém o arquivo BackUpCleanUp.vbs.

  2. Digite o seguinte comando e pressione ENTER:

    Cscript.exe BackUpCleanUp.vbs <Número de dias> <\\nome do servidor\nome da pasta>

    onde <Número de dias> é a idade máxima dos arquivos de backup que você deseja manter (arquivos de backup mais antigos do que isso serão excluídos pelo script BackUpCleanUp) e <\\nome do servidor\nome da pasta> é o caminho do arquivo de manifesto de backup spbrtoc.xml.

  3. Para solucionar problemas do processo de remoção de arquivos de backup ou para analisar o andamento do processo, abra o arquivo BackUpCleanUp.log localizado na mesma pasta.

Importante

Para concluir o procedimento abaixo, é preciso pelo menos fazer parte do grupo Administradores do computador local.

Agendar ou atrasar a remoção do backup

  1. Inicie o Assistente de Tarefas Agendadas, clique duas vezes em Adicionar Tarefa Agendada e clique em Avançar.

  2. Clique em Procurar, navegue até %ROOT%\WINNT\System32\cscript.exe e clique em Abrir.

  3. Digite um nome para a tarefa; por exemplo, BackUpCleanUp

  4. Para executar esse backup periodicamente, de forma automática, selecione um intervalo como Semanalmente ou Mensalmente e clique em Avançar. Para executar esse backup uma vez ou para atrasar um único backup, selecione Somente uma vez

  5. Escolha uma hora e uma data de início para a tarefa e clique em Avançar.

  6. Digite um nome de usuário e senha nas caixas apropriadas, confirme a senha e clique em Avançar. Essa tarefa será executada como se tivesse sido iniciada por esse usuário.

  7. Selecione Abrir as propriedades avançadas desta tarefa ao clicar em Concluir e clique em Concluir.

  8. Na caixa de diálogo Propriedades Avançadas, na guia Tarefa, na caixa de texto Executar, digite o comando a seguir:

    Cscript.exe BackUpCleanUp.vbs <Número de dias> <\\nome do servidor\nome da pasta>

    onde <Número de dias> é a idade máxima dos arquivos de backup que você deseja manter (arquivos de backup mais antigos do que isso serão excluídos pelo script BackUpCleanUp) e <\\nome do servidor\nome da pasta> é o caminho do arquivo de manifesto de backup spbrtoc.xml.

  9. Na caixa de texto Iniciar em, digite o caminho da pasta onde o arquivo BackUpCleanUp.vbs está localizado.

  10. Selecione Habilitada (a tarefa agendada será executada na hora especificada) e desmarque a caixa de seleção Executar somente se conectado.

  11. Clique em OK.

Consulte também

Conceitos

Back up and restore the farm (Windows SharePoint Services 3.0)
Dicas para melhorar o desempenho de backup e recuperação (Windows SharePoint Services)
Back up and restore the entire farm (Windows SharePoint Services 3.0 technology)
Fazer backup e restaurar aplicativos Web, usando as ferramentas internas (Windows SharePoint Services 3.0)
Fazer backup e restaurar conjuntos de sites, usando as ferramentas internas (Windows SharePoint Services 3.0)
Fazer backup e restaurar bancos de dados de conteúdo (Windows SharePoint Services 3.0)
Create a recovery farm (Windows SharePoint Services 3.0)
Fazer backup e restaurar um item usando o DPM (Windows SharePoint Server 3.0)
Fazer backup e restaurar um site usando o DPM (Windows SharePoint Services 3.0)
Back up and recover site objects (Windows SharePoint Services)
Fazer backup de logs (Windows SharePoint Services 3.0)