none
SQL RRS feed

  • Pergunta

  • OLA PESSAOL ALGUEM SABE COMO FAZER O PLANO DE BACKUP,INDICANDO A QUANTIDADE DE DIA QUE ELE REMOVA OS BACKUPS ANTIGOS,NO SQL 2000,FAZ JA NO SQL 2005 NAO CONSEGUI FAZER FUNCIONAR.

    • Movido Gustavo Maia Aguiar segunda-feira, 9 de maio de 2011 15:26 (De:SQL Server - Desenvolvimento Geral)
    quinta-feira, 5 de maio de 2011 13:46

Respostas

  • Lusinaldo,

    Dentro do SQL 2005 tem um task chamado Maintenance Plan -> Maintenance Cleanup task. Lá você configura as pastas e o tempo que você quer que ele mantenha seus backups excluíndo os demais.

    []'s

    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    quinta-feira, 5 de maio de 2011 13:53
  • Lusinaldo,

    Você tem a opção de trabalhar com Jobs também e criar um schedule para rodar os seus backups.

     

     

    Abraço


    Erickson Ricci SQL Server DBA @ BB Mapfre Email: ericksonfabricio@gmail.com Blog: ericksonricci.wordpress.com Twitter: @EricksonRicci TS: Microsoft SQL Server 2008, Database Development TS: Microsoft SQL Server 2008, Implementation and Maintenance TS: Microsoft SQL Server 2005, Implementation and Maintenance
    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    quinta-feira, 5 de maio de 2011 14:31
  • Lusinaldo,

    Concordo com a sugestão dos amigos, mas também existe a possibilidade de no script ou job de execução do seu backup definir o tempo de retenção deste backup, ou seja, por quanto tempo ele é válido. Veja se isso também não ajuda.

     


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    quinta-feira, 5 de maio de 2011 19:40
    Moderador
  • Boa tarde Lusinaldo,

    segue abaixo um ex do meu:

    DECLARE

    @i_Dia

    INT

     

    ,@i_Hora INT

     

    ,@i_Ret INT

     

    ,@vc_Caminho VARCHAR(255)

     

    ,@vc_Caminho1 VARCHAR(255) --ECLUI DATAS MAIOR QUE 14 DIAS

     

    ,@vc_LinhaComando VARCHAR(300)

    SET

    @i_Dia = DATEPART (WEEKDAY, GETDATE

    ())

    SET

    @i_Hora = DATEPART (HOUR, GETDATE

    ())

    IF

    @i_Dia = 1 AND @i_Hora >= 21

     

    BEGIN

     

    SET @vc_Caminho1 = REPLACE('\\LOCAL_REDE\PRODU_' + 'D' + REPLACE(CONVERT(CHAR(5),GETDATE() -21 ,104),'.', ''), ' ','') + '*'

     

    SET @vc_LinhaComando = 'DEL ' + @vc_Caminho1

     

    EXEC @i_Ret = MASTER..xp_cmdshell @vc_LinhaComando

     

    SET @vc_Caminho = REPLACE('\\LOCAL_REDE\PRODU_' + 'D' + REPLACE(CONVERT(CHAR(5),GETDATE(),104),'.', '') + '_' + 'H' + REPLACE(SUBSTRING(CONVERT(CHAR,CONVERT(TIME,GETDATE())),1,5), ':', '') + '.bak', ' ','')

     

    BACKUP DATABASEPRODUCAO TO DISK = @vc_Caminho

     

    WITH INIT

    , RETAINDAYS = 14

     

    , NOFORMAT

     

    , NAME = N'PRODU_FULL_'

     

    , STATS=10

     

    END
    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    segunda-feira, 9 de maio de 2011 17:20

Todas as Respostas

  • Lusinaldo,

    Dentro do SQL 2005 tem um task chamado Maintenance Plan -> Maintenance Cleanup task. Lá você configura as pastas e o tempo que você quer que ele mantenha seus backups excluíndo os demais.

    []'s

    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    quinta-feira, 5 de maio de 2011 13:53
  • Lusinaldo,

    Você tem a opção de trabalhar com Jobs também e criar um schedule para rodar os seus backups.

     

     

    Abraço


    Erickson Ricci SQL Server DBA @ BB Mapfre Email: ericksonfabricio@gmail.com Blog: ericksonricci.wordpress.com Twitter: @EricksonRicci TS: Microsoft SQL Server 2008, Database Development TS: Microsoft SQL Server 2008, Implementation and Maintenance TS: Microsoft SQL Server 2005, Implementation and Maintenance
    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    quinta-feira, 5 de maio de 2011 14:31
  • Lusinaldo,

    Concordo com a sugestão dos amigos, mas também existe a possibilidade de no script ou job de execução do seu backup definir o tempo de retenção deste backup, ou seja, por quanto tempo ele é válido. Veja se isso também não ajuda.

     


    Pedro Antonio Galvão Junior [MVP | Microsoft Evangelist | Microsoft Partner | Engenheiro de Softwares | Especialista em Banco de Dados | SorBR.Net | Professor Universitário | MSIT.com]
    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    quinta-feira, 5 de maio de 2011 19:40
    Moderador
  • Boa tarde Lusinaldo,

    segue abaixo um ex do meu:

    DECLARE

    @i_Dia

    INT

     

    ,@i_Hora INT

     

    ,@i_Ret INT

     

    ,@vc_Caminho VARCHAR(255)

     

    ,@vc_Caminho1 VARCHAR(255) --ECLUI DATAS MAIOR QUE 14 DIAS

     

    ,@vc_LinhaComando VARCHAR(300)

    SET

    @i_Dia = DATEPART (WEEKDAY, GETDATE

    ())

    SET

    @i_Hora = DATEPART (HOUR, GETDATE

    ())

    IF

    @i_Dia = 1 AND @i_Hora >= 21

     

    BEGIN

     

    SET @vc_Caminho1 = REPLACE('\\LOCAL_REDE\PRODU_' + 'D' + REPLACE(CONVERT(CHAR(5),GETDATE() -21 ,104),'.', ''), ' ','') + '*'

     

    SET @vc_LinhaComando = 'DEL ' + @vc_Caminho1

     

    EXEC @i_Ret = MASTER..xp_cmdshell @vc_LinhaComando

     

    SET @vc_Caminho = REPLACE('\\LOCAL_REDE\PRODU_' + 'D' + REPLACE(CONVERT(CHAR(5),GETDATE(),104),'.', '') + '_' + 'H' + REPLACE(SUBSTRING(CONVERT(CHAR,CONVERT(TIME,GETDATE())),1,5), ':', '') + '.bak', ' ','')

     

    BACKUP DATABASEPRODUCAO TO DISK = @vc_Caminho

     

    WITH INIT

    , RETAINDAYS = 14

     

    , NOFORMAT

     

    , NAME = N'PRODU_FULL_'

     

    , STATS=10

     

    END
    • Marcado como Resposta Richard Juhasz quinta-feira, 12 de maio de 2011 18:52
    segunda-feira, 9 de maio de 2011 17:20