locked
Backup Banco RRS feed

  • Pergunta

  •  

       Boa noite pessoal, tenho um banco rodando em microsofot sql server 2000 que esta com 20G, o backup normal dele ja  está um pouco lento pelo tamanho, gostaria de uma ideia dos caros colegas para uma rotina de backup via software ou bat que fizesse o backup e ja compacta-se o banco para viabilizar esta rotina, lendo varios posts não verifiquei nenhum que fale de backup e compactação juntos, diminuindo o tamanho do banco, pois gostaria de grava-lo tambem em uma midia removivel, aceito conselhos para essa tarefa, aguado breve retorno. Desde de já agradeço a todos.
    terça-feira, 1 de abril de 2008 23:37

Respostas

  • Waister,

     

    O SQL Server 2000, possui algumas extended procedure, não documentadas, entre elas existe especificamente uma para compactação de arquivos no SQL Server.

     

    Veja abaixo o código de exemplo para utilizar:

     

    Code Snippet

    -- Compacta o arquivo de backup DBTESTE_BKP.BAK

    EXEC master.dbo.xp_makecab

    @cabfilename = 'E:/Backup/DBTESTE_BKP.cab',

    @compression_mode = 'mszip',

    @verbose_level = 0,

    @filename1 = 'E:/Backup/DBTESTE_BKP.BAK'

     

    --Descompactando o arquivo DBTESTE_BKP.cab

    EXEC master.dbo.xp_unpackcab

    @cabfilename = 'E:/Backup/DBTESTE_BKP.cab',

    @destination_folder= 'E:/Backup',

    @verbose_level=0

     

     

     

    quarta-feira, 2 de abril de 2008 12:29
    Moderador

Todas as Respostas

  • Waister,

     

    O SQL Server 2000, possui algumas extended procedure, não documentadas, entre elas existe especificamente uma para compactação de arquivos no SQL Server.

     

    Veja abaixo o código de exemplo para utilizar:

     

    Code Snippet

    -- Compacta o arquivo de backup DBTESTE_BKP.BAK

    EXEC master.dbo.xp_makecab

    @cabfilename = 'E:/Backup/DBTESTE_BKP.cab',

    @compression_mode = 'mszip',

    @verbose_level = 0,

    @filename1 = 'E:/Backup/DBTESTE_BKP.BAK'

     

    --Descompactando o arquivo DBTESTE_BKP.cab

    EXEC master.dbo.xp_unpackcab

    @cabfilename = 'E:/Backup/DBTESTE_BKP.cab',

    @destination_folder= 'E:/Backup',

    @verbose_level=0

     

     

     

    quarta-feira, 2 de abril de 2008 12:29
    Moderador
  • Ok, otima idéia, valeu demais pela ajuda, Mais uma pergunta; existe algum software que faça algo parecido, ja vi alguns para banco firebird e postgre, se sim, saberia indicar uma solução boa?

     

    quarta-feira, 2 de abril de 2008 22:14
  • Waister,

     

    se realmente é o caso de usar uma solução fora do SQL Server, você pode usar o próprio WZZip atravez de linha de comandos.

    para isso, o servidor deve ter instalado o WZZip e você precisa setar nas variáveis de inicialização do SO do servidor o Path onde está o executavel do SW e dar um boot na máquina para que o SQL reconheça.

     

    Depois disso você poderá nas suas queries capturar o nome do backup e colocar como parte do script de backup uma linha para a compactação.

     

    Ficaria algo como o seguinte:

     

    Code Snippet

    SELECT

             'EXEC MASTER.dbo.XP_CMDSHELL ''WZZIP.exe ' + Nome do ZipFile + '.zip '

             + Nome do backup + '.bak'' ,no_output'

    FROM

             #Tabela com lista de backups a ser zipado -- ou algo do tipo

     

     

    segunda-feira, 7 de abril de 2008 19:14