IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

instructions du .bat qui ne s'exécutent pas avec planificateur de tâches


Sujet :

Scripts/Batch

  1. #1
    Membre régulier
    Inscrit en
    Juillet 2010
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Juillet 2010
    Messages : 158
    Points : 89
    Points
    89
    Par défaut instructions du .bat qui ne s'exécutent pas avec planificateur de tâches
    Bonjour,

    J'ai créé un fichier .bat qui

    - Exécute une requête SQL qui effectue une sauvegarde de mes db.
    - Compresse les fichiers dans un rar.
    - Envoie les fichier rar vers un serveur FTP.
    - Supprime les fichiers créés après envoi.

    Code bat : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SQLCMD.EXE -S (local) -i "c:\backup\backup.sql"
    rar a -r C:\backup\backup.rar C:\backup\db
    rar a -r C:\backup\site.rar D:\inetpub\site
    ftp -s:params.ftp
    del db\site.bak
    del db\appli.bak
    del db\webmail.bak
    del backup.rar
    del site.rar

    Lorsque j'exécute mon batch, tout se déroule sans problème... mais lorsque c'est le "planificateur de tâches" qui s'en occupe, l'exécution du batch s'arrête après la sauvegarde de mes bd.

    Je ne comprend pas très bien, quelqu'un a-t-il une explication ?

    Merci d'avance.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 38
    Points : 29
    Points
    29
    Par défaut
    Bonjour,
    J'ai un cas un peu similaire :
    - 1 batch qui fait des sauvegardes à chaud dans un répertoire svauto
    - 1 tâche planifiée qui se lance tous les jouers

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
    sqlcmd -S SRVSBS2011\SOLID5 -E -Q "BACKUP DATABASE SOLIDDB1 TO  DISK = N'D:\BDDSOLID5\svauto\SOLIDDB1.bak' WITH NOFORMAT, INIT,  NAME = N'SOLIDDB1-Complète Base de données Sauvegarde', SKIP, NOREWIND, NOUNLOAD,  STATS = 10"
    
    sqlcmd -S SRVSBS2011\SOLID5 -E -Q "BACKUP DATABASE SOLIDARCHI1 TO  DISK = N'D:\BDDSOLID5\svauto\SOLIDARCHI1.bak' WITH NOFORMAT, INIT,  NAME = N'SOLIDDB1-Complète Base de données Sauvegarde', SKIP, NOREWIND, NOUNLOAD,  STATS = 10"
    
    
    sqlcmd -S SRVSBS2011\SOLID5 -E -Q "BACKUP DATABASE SOLIDTMP1 TO  DISK = N'D:\BDDSOLID5\svauto\SOLIDTMP1.bak' WITH NOFORMAT, INIT,  NAME = N'SOLIDDB1-Complète Base de données Sauvegarde', SKIP, NOREWIND, NOUNLOAD,  STATS = 10"
    
    sqlcmd -S SRVSBS2011\SOLID5 -E -Q "BACKUP DATABASE SOLIDPARAM TO  DISK = N'D:\BDDSOLID5\svauto\SOLIDPARAM.bak' WITH NOFORMAT, INIT,  NAME = N'SOLIDDB1-Complète Base de données Sauvegarde', SKIP, NOREWIND, NOUNLOAD,  STATS = 10"
    Quand j'éxécute avec un click droit > Exécuter (sur la tâche planifiée) et que je fait F5 régulièrement la tp reste "en cours..."
    si je lance le .bat en manuel ca dure quelques secondes et c'est fini.

    Pour moi la solution à été de rajouter un echo off en 1er ligne.
    Du coup après un certain laps de temps quand je fait F5 dans mes tp c'est de nouveau à prêt et quand je regarde mes fichiers bak ils sont bien avec une nouvelle date.
    Peut-être qu'il faudrait aussi mettre une commande exit ou autre pour forcer la fermeture du script... je ne sais pas trop.
    Pour moi dès que tu mets une tp derrière un script bat ou un exe c'est risqué (dans le sens ou tu vas avoir un comportement inatendu)

  3. #3
    Membre éclairé

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2012
    Messages
    359
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 359
    Points : 738
    Points
    738
    Billets dans le blog
    2
    Par défaut
    Oui il faut mettre un exit à la fin car un processus est créé.
    Le gourou dicte la ligne (de commande) à suivre ...

    Penser à lire le Tutoriel Batch ou a consulter la FAQ Batch et ses contributions,
    ainsi que le Cour sur la ligne de commande et des scripts

Discussions similaires

  1. [SAMBA] Scripts .bat de Netlogon qui ne s'exécutent pas
    Par Jiraiya42 dans le forum Réseau
    Réponses: 1
    Dernier message: 30/07/2009, 18h01
  2. [SQL] Requête UPDATE qui ne s'exécute pas avec PHP
    Par xplose dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 16/08/2007, 09h42
  3. Réponses: 8
    Dernier message: 08/05/2006, 20h40
  4. probleme de requete mysql qui ne s'exécute pas
    Par anto48_4 dans le forum Requêtes
    Réponses: 6
    Dernier message: 23/03/2006, 10h51
  5. [MySQL] requete sql qui ne s'exécute pas
    Par anto48_4 dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 16/03/2006, 09h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo