Servidor 2012 Tarefa Agendada CMD mysqldump não está fazendo o que é pretendido

2

Estou executando um arquivo de lote para fazer backup de alguns bancos de dados mysql em um servidor da web de 2012. O arquivo em lotes cria uma pasta e executa o seguinte para cada db:

mysqldump -u *username* -p*Password* *db_name* > C:\folder&filename-%date:~-2,4%-%date:~-7,2%-%date:~-10,2%.sql

Isso funciona bem quando eu manualmente executar o arquivo de banho, no entanto, quando eu executar o mesmo arquivo em lotes no agendador de tarefas recebo bancos de dados 0kb sem conteúdo. A pasta é criada, assim como os arquivos xyz.sql, mas é isso.

O mesmo script está funcionando bem no meu servidor 08.

Alguma ideia? Obrigado

    
por Mr T 19.05.2014 / 22:18

2 respostas

0

Eu resolvi o problema. O arquivo de lote não apareceu ao executar o agendador de tarefas, então não consegui ver o que estava acontecendo. A sugestão de Brads de criar um arquivo de lote para executar o arquivo em lote apareceu no script & Eu pude ver o problema imediatamente. Não foi possível encontrar o aplicativo mysqldump, que não estava no diretório atual do cmd (system32).

Eu adicionei cd c:\folderlocationofmysqldump & problema resolvido. Obrigado pela ajuda pessoal.

    
por 21.05.2014 / 23:28
0

Teve isso algumas vezes.

Abra sua política de segurança local > políticas locais > atribuição de direitos do usuário

Vá para " Fazer logon como um trabalho em lotes ", adicione a conta de usuário em que você está executando a tarefa agendada e teste.

(Melhor ainda, crie uma conta de serviço específica para essa tarefa e use isso)

    
por 19.05.2014 / 23:43