Ir para conteúdo
Fórum Script Brasil
  • 0

Backup de todas as bases


Niggaz Flavors

Pergunta

Boa Tarde galera, estou chegando agora e gostaria de uma ajuda se possivel...

Estou tentando fazer um job para realizar um backup de todas as bases existentes no banco.

Eu não sei praticamente nada sobre sql server...tentei criar o seguinte script:

DECLARE DATABASES FOR SELECT NAME FROM SYSDATABASES

DECLARE @NAMES

OPEN DATABASES

FETCH NEXT FROM DATABASES INTO @NAMES

WHILE @@FETCH_STATUS = 0

BEGIN

BACKUP DATABASE @NAMES TO DISK = 'G:\TESTE\'+@NAMES+'.BAK'

WITH FORMAT, NAME = @NAMES+'.BAK',INIT

END

CLOSE DATABASES

DEALLOCATE DATABASES

o que tem de errado com ele? alguém poderia me ajudar?

Desde já agradeço

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Não testei porque não tenho acesso a SQL server aqu no trampo mas tente algo assim:

declare @comando varhcar(2000)

DECLARE DATABASES FOR SELECT NAME FROM SYSDATABASES
DECLARE @NAMES
OPEN DATABASES
FETCH NEXT FROM DATABASES INTO @NAMES
WHILE @@FETCH_STATUS = 0
BEGIN

    set @comando = 'BACKUP DATABASE @NAMES TO DISK = G:\TESTE\'+@NAMES+'.BAK WITH FORMAT, NAME = ' +
                    @NAMES + ' .BAK,INIT'
    EXEC(@comando)
END
CLOSE DATABASES
DEALLOCATE DATABASES

Link para o comentário
Compartilhar em outros sites

  • 0

Opa, to mudando aqui...

então, eu percebi q faltava uma coisa...no caminho para onde o backup vai, tem q ter aspas simples, ai eu modifiquei o script :

DECLARE DATABASES CURSOR FOR SELECT NAME FROM SYSDATABASES

DECLARE @NAMES VARCHAR(100)

DECLARE @COMANDO VARCHAR(200)

OPEN DATABASES

FETCH NEXT FROM DATABASES INTO @NAMES

WHILE @@FETCH_STATUS = 0

BEGIN

SET @COMANDO =

'BACKUP DATABASE '+@NAMES+' TO DISK = '+

'''G:\TESTE\'''+@NAMES+'''.BAK'''+

'WITH FORMAT, NAME = '+@NAMES+'''.BAK'''+' ,INIT'

EXECUTE (@COMANDO)

FETCH NEXT FROM DATABASES INTO @NAMES

END

CLOSE DATABASES

DEALLOCATE DATABASES

porem agora, o erro é outro...rs

ele reclama do nome das bases:

Server: Msg 170, Level 15, State 1, Line 1

Line 1: Incorrect syntax near 'CIAP'.

Server: Msg 170, Level 15, State 1, Line 1

Line 1: Incorrect syntax near 'master'.

Server: Msg 170, Level 15, State 1, Line 1

Line 1: Incorrect syntax near 'model'.

TEM IDEIA DO Q PODE SER??

Editado por Niggaz Flavors
Link para o comentário
Compartilhar em outros sites

  • 0

Bom galera, consegui resolver a parada aqui.

O script se perdia nas aspas simples...agora ta funcionando!

Pra que quiser, ta ai:

USE MASTER

DECLARE DATABASES CURSOR FOR SELECT NAME FROM SYSDATABASES

DECLARE @NAMES VARCHAR(100)

DECLARE @COMANDO VARCHAR(200)

OPEN DATABASES

FETCH NEXT FROM DATABASES INTO @NAMES

WHILE @@FETCH_STATUS = 0

BEGIN

-- SELECT @NAMES = 'UNIS0001'

SET @COMANDO =

'BACKUP DATABASE '+@NAMES+' TO DISK = '+'''G:\TESTE\'+@NAMES+'.BAK'''+

'WITH FORMAT, NAME = '+''''+@NAMES+'.BAK'''+' ,INIT'

EXECUTE (@COMANDO)

FETCH NEXT FROM DATABASES INTO @NAMES

END

CLOSE DATABASES

DEALLOCATE DATABASES

[]'s

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,7k
×
×
  • Criar Novo...