Array
(
)

Backup para outro servidor

Zubat
   - 30 mar 2005

Olá pessoal,

Estou com um probleminha que é o seguimte:

Tenho um banco de aproximadamente 30GB e não tenho espaço
necessário
para efetuar o backup em seu servidor, alguem poderia me dar uma
idêia de como fazer com que o Enterprise Manager direcionasse o
backup para um outro servidor da mesma rede.
Acho que isso é possivel.

Agradeço antecipadamente.

Zubat.

Marcus.magalhaes
   - 26 abr 2005

Boa noite.

Vc pode fazer da seguinte forma:

1) Crie um compartilhamento no seu servidor destino onde vc deseja armazenar o backup;
2) Verifique se o usuário que sobe o serviço do SS tem permissão de acesso neste compartilhamento;
3) No seu servidor de banco de dados, faça o teste para saber se o SS está enxergando este compartilhamento. Vc pode logar com o usuário q sobe o SS e testar ou dentro do query analyzer executar o seguinte comando : exec master..xp_cmdshell ´dir \\192.168.1.1\compartilhamento´
4) A partir daqui vc tem 2 opções, ou cria um backup device apontando para o compartilhamento : \\192.168.1.1\compartilhamento\nome_do_backup.bak´ ou coloca o seguinte comando no step do seu job de backup : backup database dbname to disk = ´\\192.168.1.1\compartilhamento\backupname.bak´.

PS.: 192.168.1.1 é apenas um exemplo, vc deve substitui-lo pelo IP do seu servidor compartilhado.

Espero ter ajudado.

Att,

Zubat
   - 03 mai 2005

Gostaria de agradecer muito pela ajuda. me foi de grande valor aproveito para deixar um grande abraço.
Zubat.

Glauber_marques
   - 18 mai 2005

Zubat, te digo com certeza que grande parte desses 30GB são provenientes do arquivo de log do SQL Server. Eu uso o script abaixo todo mês para diminuir o tamanho. Rode através do banco master.

declare cr_Cursor cursor fast_forward
for
select name from master.dbo.SysDatabases
declare @database varchar(200)
declare @cmd varchar(200)
declare @cmd2 varchar(200)
open cr_Cursor
fetch next from cr_Cursor into @database
while (@@fetch_status <> -1)
begin
if (@@fetch_status <> -2)
begin
set @cmd = ´backup log ´+´´+@database+´´+´ with truncate_only´
print ´´
print ´-------------------------------------------´
print ´>>>> truncate Database: ´+ @database
print ´-------------------------------------------´
set @cmd2 = ´DBCC SHRINKDATABASE(´+´´+@database+´´+´,10)´
print ´´
print ´-------------------------------------------´
print ´>>>> DBCC Database: ´+ @database
print ´-------------------------------------------´
exec (@cmd)
exec (@cmd2)
end
fetch next from cr_Cursor into @database
print ´´
print ´-------------------------------------------´
print ´>>>> Fim do processo´
print ´-------------------------------------------´
end
close cr_Cursor
deallocate cr_Cursor

Marcus.magalhaes
   - 18 mai 2005

Boa noite Glauber.

Se vc não está fazendo uso do log, como parece pelo seu script, por que não seta a opção RECOVERY MODEL como SIMPLE, e deixa a opção AUTO SHRINK habilitada, assim vc não precisa rodar isso para diminuir o tamanho do seu arquivo. Isso evita também que o disco seja consumido com informações inúteis.

Att,