none
Agendar Job RRS feed

  • Pergunta

  • Prezados,

     

    Li em algum lugar que é impossível fazer um agendamento de job sql que seja startado pelo serviço Sql Server Agent na versão SQL EXPRESS 2008, essa informação procede? Caso realmente seja impossível a opção acima, minha única solução seria executar meu job sql de backup via Agendador de Tarefas do Windows? Se for essa a única solução vocês tem algum link a respeito de como invocar o Job pelo Agendador de Tarefas do Windows? Preciso de ajuda nisso...

     

    Abs,


    Frederico Miranda
    sexta-feira, 29 de abril de 2011 12:34

Respostas

  • Exato, existem outros parametros que podem ser passados, como usuario e senha, a documentação no Books Online sobre SQLCMD é muito extensa e completa.
    ------------------------------------------------------------- Oracle OCA11g
    • Marcado como Resposta Richard Juhasz sexta-feira, 6 de maio de 2011 20:26
    sexta-feira, 29 de abril de 2011 12:54
    Moderador
  • Frederico, bom dia. Já utilizei uma vez o sqlcmd para realizar backups automáticos no sqlserver 2005 Express. Quando utilizei, fiz da seguinte maneira: Criei um arquivo .SQL e nele coloquei o comando para realização do backup. E depois criei um arquivo .bat, utilizando o sqlcmd, apontando para o arquivo sql. Como eu tinha apenas uma instancia na maquina na época utilizei o seguinte código: sqlcmd -U usuario -P senha -i "caminho_do_arquivo_.sql" Caso neste servidor tenha mais de uma instância ou não seja usado o nome padrão, você precisará informar o servidor e nome da instância, utilizando o seguinte código: sqlcmd -S nome_servidor\instancia -U usuario -P senha -i "caminho_do_arquivo_.sql"
    sexta-feira, 29 de abril de 2011 14:40

Todas as Respostas

  • Frederico,

     

    Sim, na verdade não é que seja impossivel agendar pelo SQL Agent nas versões express, é que as versões express simplismente não possuem o SQL Agent.

     

    Para se agendar pelo Task Scheduler do Windows é necessario a utilização do SQL CMD via linha de comando DOS.

    Segue um link interessante: http://msdn.microsoft.com/pt-br/library/ms170207.aspx

     

    Atenção para as lições, são bem faceis de serem compreendidas e colocadas em pratica.


    ------------------------------------------------------------- Oracle OCA11g
    sexta-feira, 29 de abril de 2011 12:41
    Moderador
  • Certo Fabrizzio,

     

    mas o Agendador de Tarefas do Windows não vai apenas rodar diretamente meu arquivo.sql com instrução de backup nao?

     

    Não entendi o envolvimento do SQL CMD com agendador de tarefas, pelo que entendi o SQL CMD é quando se quer rodar um script sql via DOS ou seja vc manualmente querendo executar um script contido num arquivo .sql. E não é esse o caso, o agendador de tarefas deve rodar meu arquivo .sql direto não é isso não? Se não for isso, como vou embutir SQL CMD no agendador?

     

    obrigado.


    Frederico Miranda
    sexta-feira, 29 de abril de 2011 12:46
  • Frederico,

     

    Isso esta na lição 2 do link que te enviei, todo caso, é algo +- assim:

     

    sqlcmd -S myServer\instanceName -i C:\myScript.sql -o C:\EmpAdds.txt


    ------------------------------------------------------------- Oracle OCA11g
    sexta-feira, 29 de abril de 2011 12:49
    Moderador
  • Então Fabrizzio pelo que eu entendi essa linha de comando aí:

     

    sqlcmd -S myServer\instanceName -i C:\myScript.sql -o C:\EmpAdds.txt

     

    é que deve ser agendada no meu Agendador de Tarefas do Windows?

     

    Abs...


    Frederico Miranda
    sexta-feira, 29 de abril de 2011 12:52
  • Exato, existem outros parametros que podem ser passados, como usuario e senha, a documentação no Books Online sobre SQLCMD é muito extensa e completa.
    ------------------------------------------------------------- Oracle OCA11g
    • Marcado como Resposta Richard Juhasz sexta-feira, 6 de maio de 2011 20:26
    sexta-feira, 29 de abril de 2011 12:54
    Moderador
  • Frederico, bom dia. Já utilizei uma vez o sqlcmd para realizar backups automáticos no sqlserver 2005 Express. Quando utilizei, fiz da seguinte maneira: Criei um arquivo .SQL e nele coloquei o comando para realização do backup. E depois criei um arquivo .bat, utilizando o sqlcmd, apontando para o arquivo sql. Como eu tinha apenas uma instancia na maquina na época utilizei o seguinte código: sqlcmd -U usuario -P senha -i "caminho_do_arquivo_.sql" Caso neste servidor tenha mais de uma instância ou não seja usado o nome padrão, você precisará informar o servidor e nome da instância, utilizando o seguinte código: sqlcmd -S nome_servidor\instancia -U usuario -P senha -i "caminho_do_arquivo_.sql"
    sexta-feira, 29 de abril de 2011 14:40