locked
Erro ao executar SQLCMD RRS feed

  • Pergunta

  • Pessoal,

    Utilizo o SQL Server 2008 R2 Express. Estou executando o comando abaixo para aprimorar para uma rotina de backup. Mas quando executo está me retornando o erro abaixo.

    ==========================================================
    C:\>sqlcmd.exe -S .\EPOSERVER -Q "BACKUP DATABASE ePO04_GER-OFI-08 TO DISK='d:\b
    ackupsql\teste.bak' WITH FORMAT"
    Msg 102, Level 15, State 1, Server GER-OFI-08\EPOSERVER, Line 1
    Incorrect syntax near '-'.
    Msg 319, Level 15, State 1, Server GER-OFI-08\EPOSERVER, Line 1
    Incorrect syntax near the keyword 'with'. If this statement is a common table expression, an xmlnamespaces clause or a change tracking context clause, the previous statement must be terminated with a semicolon.
    ==========================================================

    Onde EPOSERVER é o nome da instancia SQL e ePO7_GER-OFI-08 é o banco. Estou tentado esse procedimento de backup, porque não consegui localizar nessa versão do SQL uma forma de automatizar backups agendados.

    Agradeço desde quem puder dar uma "luz" no final do túnel!


    Denis Leal

    sexta-feira, 22 de agosto de 2014 17:14

Respostas

  • Denis,

    Tente executar este mesmo comando com o nome do banco de dados entre colchetes.

    Veja abaixo:

    sqlcmd.exe -S .\EPOSERVER -Q "BACKUP DATABASE [ePO04_GER-OFI-08] 
    TO DISK='d:\backupsql\teste.bak' WITH FORMAT"


    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    • Marcado como Resposta Denis Leal sexta-feira, 22 de agosto de 2014 18:45
    sexta-feira, 22 de agosto de 2014 17:24

Todas as Respostas

  • Denis,

    Tente executar este mesmo comando com o nome do banco de dados entre colchetes.

    Veja abaixo:

    sqlcmd.exe -S .\EPOSERVER -Q "BACKUP DATABASE [ePO04_GER-OFI-08] 
    TO DISK='d:\backupsql\teste.bak' WITH FORMAT"


    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    • Marcado como Resposta Denis Leal sexta-feira, 22 de agosto de 2014 18:45
    sexta-feira, 22 de agosto de 2014 17:24
  • Durval,

    Retornou o erro abaixo

    ============================================================
    C:\>sqlcmd.exe -S .\EPOSERVER -Q "BACKUP DATABASE [ePO4_GER-OFI-08] TO DISK='d:\
    backupsql\teste.bak' WITH FORMAT"
    Processed 39896 pages for database 'ePO4_GER-OFI-08', file 'ePO4_GER-OFI-08' on file 1.
    Processed 2 pages for database 'ePO4_GER-OFI-08', file 'ePO4_GER-OFI-08_log' on file 1.
    BACKUP DATABASE successfully processed 39898 pages in 7.200 seconds (43.292 MB/sec).
    ============================================================


    Denis Leal

    sexta-feira, 22 de agosto de 2014 17:43
  • Durval,

    Retornou o erro abaixo

    ============================================================
    C:\>sqlcmd.exe -S .\EPOSERVER -Q "BACKUP DATABASE [ePO4_GER-OFI-08] TO DISK='d:\
    backupsql\teste.bak' WITH FORMAT"
    Processed 39896 pages for database 'ePO4_GER-OFI-08', file 'ePO4_GER-OFI-08' on file 1.
    Processed 2 pages for database 'ePO4_GER-OFI-08', file 'ePO4_GER-OFI-08_log' on file 1.
    BACKUP DATABASE successfully processed 39898 pages in 7.200 seconds (43.292 MB/sec).
    ============================================================


    Denis Leal

    Denis,

    Na verdade, esta mensagem indica que seu backup foi realizado com sucesso.

    Veja este trecho final:

    ...BACKUP DATABASE successfully processed...

    Se possível, realize um teste de RESTORE deste arquivo em outra instância SQL, apenas para confirmar que o backup foi realizado com sucesso e está íntegro.

    Para maiores informações sobre RESTORE veja:

    http://msdn.microsoft.com/pt-br/library/ms186858.aspx

    http://msdn.microsoft.com/pt-br/library/ms177429.aspx

    Não esqueça de marcar como resposta todos os posts que ajudaram na sua solução !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    sexta-feira, 22 de agosto de 2014 17:48
  • Durval,

    Há alguma maneira em eu agendar esse procedimento? Hoje eu preciso que essa rotina seja executada uma vez por semana.


    Denis Leal

    sexta-feira, 22 de agosto de 2014 17:51
  • Durval,

    Há alguma maneira em eu agendar esse procedimento? Hoje eu preciso que essa rotina seja executada uma vez por semana.


    Denis Leal

    Denis,

    Como você está utilizando uma versão Express do SQL Server, você só poderá agendar a tarefa através do Windows.

    Recomendo que você realize esta tarefa de backup com uma periodicidade maior do que apenas 1 vez por semana, afinal em caso de falha na execução ou se o arquivo referente ao último backup estiver corrompido você ficará sem nenhuma prevenção. Verifique a quantidade de espaço disponível para esta tarefa, faça uma estimativa de crescimento para evitar problemas com armazenamento e execute mais backup´s de seus bancos.

    Segue abaixo algumas referências para agendar a execução do arquivo .bat no seu Windows:

    http://technet.microsoft.com/pt-br/library/cc721931.aspx

    http://technet.microsoft.com/pt-br/library/cc766428.aspx

    Não esqueça de marcar como resposta todos os posts que ajudaram na sua solução !

    Abraços,

    Durval Ramos
    Microsoft Partner | MTA | MCSA - SQL Server 2012 | MCSE - Data Platform
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi útil "Votar como Útil"
    sexta-feira, 22 de agosto de 2014 18:00
  • Durval,

    Obrigadão pela força irmão! Bom fds.


    Denis Leal

    sexta-feira, 22 de agosto de 2014 18:45