Balero 0 Denunciar post Postado Abril 16, 2010 Bom dia, pessoal. Tenho um arquivo em um servidor que é feito o backup via arquivo .bat e .sql O arquivo é o .sql, que tem nele: declare @nome varchar(150) declare @temp varchar(100) select @temp = CONVERT(VARCHAR(12),GETDATE(),112)+ CONVERT(VARCHAR(2), DATEPART(HOUR, GETDATE()))+ CONVERT(VARCHAR(2),DATEPART(MINUTE, GETDATE())) select @nome='c:\backup\fm\FM-FleetManager-'+@temp+'.bak' BACKUP DATABASE FleetManager TO DISK=@nome; Fiz um arquivo .bat para ele compactar esse arquivo FM-FleetManager-'+@temp+'.bak' e copiar para outro servidor, porém como todo dia o arquivo muda de novo (devido ao dia do backup), não consegui faze funcionar. Segue meu arquivo .bat: echo off ECHO ************************************************************ ECHO Compactar arquivo e movendo para local de backup - \\SERVER\2006 ECHO ************************************************************ ECHO. ECHO Efetuando compactação de arquivo e depois movendo para o local de backup.... ECHO. C:\Arquiv~1\WinRAR\WINRAR.EXE a "c:\backup\fm\FM-FleetManager-'+@temp+'.rar" "c:\backup\fm\FM-FleetManager-'+@temp+'.bak" COPY c:\backup\fm\FM-FleetManager-'+@temp+'.rar X:\ ECHO. ECHO Arquivo movido com sucesso! ECHO. ECHO ************************************************************ ECHO. ECHO. ECHO. ECHO. echo on Como fazer para compactar o arquivo gerado .sql ? Obrigado, Balero Compartilhar este post Link para o post Compartilhar em outros sites
Silas Martins 0 Denunciar post Postado Abril 16, 2010 Deixa ver se entendi, você quer que o bat agende o backup e ainda compacte o arquivo? Explique melhor pois eu não entendi o que você quer que o bat faça. Compartilhar este post Link para o post Compartilhar em outros sites
Balero 0 Denunciar post Postado Abril 17, 2010 Deixa ver se entendi, você quer que o bat agende o backup e ainda compacte o arquivo? Explique melhor pois eu não entendi o que você quer que o bat faça. Opa! Eu quero que ele pegue o arquivo 'c:\backup\fm\FM-FleetManager-'+@temp+'.bak' , compacta e copia para outro local. O problema está sendo que cada dia o nome desse arquivo muda: Ex: Hj FM-FleetManager-2010041730.bak , amanhã Hj FM-FleetManager-2010041830.bak , entendeu? Se fosse um nome que não mudasse, eu colocaria no bat o nome e pronto, porém como o nome muda, não sei como fazer. Obrigado, Balero Compartilhar este post Link para o post Compartilhar em outros sites
Silas Martins 0 Denunciar post Postado Abril 18, 2010 Que eu me recorde não da pra copiar um arquivo random por bat. Compartilhar este post Link para o post Compartilhar em outros sites
Balero 0 Denunciar post Postado Abril 19, 2010 Entendi! Pensei de outra forma então, teria como eu compactar todos os arquivos de uma pasta? Usando o bat e o winrar? Ex. Na pasta RM tenho vários arquivos .bak , teria como eu compactar todos eles via bat? Obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Silas Martins 0 Denunciar post Postado Abril 21, 2010 sim basta pra isso usar o copy para compactar a pasta e joga-la dentro da unidade .rar Compartilhar este post Link para o post Compartilhar em outros sites
Balero 0 Denunciar post Postado Abril 22, 2010 Não entendi, desculpa. Teria algum exemplo? Porque eu iria compactar somente os arquivos de uma pasta e depois copiaria os arquivos alterados. Obrigado Pessoal, Tenho um arquivo de backup que é gerado .sql com um nome: Backup-RM.bak (todo dia), fiz um bat para ele compactar esse arquivo e mover para uma outra pasta. Fiz o agendamento para todo dia, porém estou com uma dúvida, ele irá substituir todo dia o arquivo, porém não gostaria, gostaria que ele mantivesse o arquivo e só adicionasse. Há como? Obrigado Compartilhar este post Link para o post Compartilhar em outros sites
AndreKociuba 0 Denunciar post Postado Abril 24, 2010 Assim No meu server eu instalei o 7z e faço o seguinte @echo on del c:\backupbasedados\backup.7z c:\program files\7-zip\7z.exe" a -t7z -mx7 -mmt c:\backupbasedados\backup.7z "c:\backupbasedados" mas eu tenho um sistema de backup pra outro server através da hotbackup...... você usaria sempre assim @echo on del c:\backupbasedados\backup.7z c:\program files\7-zip\7z.exe" a -t7z -mx7 -mmt c:\backupbasedados\backup.7z "c:\backupbasedados" COPY c:\backupbasedados\backup.7z \\SERVER\2006\backup.7z Meu sql server tem uma job pra executar o backup a cada hora... e o bat pra ser executado a cada 2 horas meu backup eh de todas as minhas bases de dados... se quiser tbm tenho o script sql q lista todas as bases de dados pra fazer o backup pela job ;) espero ter ajudado att, André Kociuba Compartilhar este post Link para o post Compartilhar em outros sites