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

PHP & Base de données Discussion :

[cron sous Red-hat] un Backup bdd planifier


Sujet :

PHP & Base de données

  1. #1
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut [cron sous Red-hat] un Backup bdd planifier
    Bonjour,

    je voudrais faire un script PHP qui sera exécuté via un cron (tous les jours à 00:00 par exemple).

    Voilà le script qui devait être exécuté, mais qui ne marche pas (je n'ai pas compris pour quoi) ? J'ai des warnings qui m'indiquent que la fonction "system()" ne s'est pas bien exécutée (jen'ai pas plus de détails)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    <?php
    $host = "localhost"; 
    $user = "root";
    $pass = "******"; // On définit les infos de la base de données
    $db = "reporting-rh";
    $date = date("d_m_Y"); // On définit le variable $date (ici, son format)
     
    $backup = $db."bdd-backup_".$date.".sql.gz";
    // Utilise les fonctions système : MySQLdump & GZIP pour générer un backup gzipé
    $command = "mysqldump -h $host -u $user -p $pass $db | gzip> $backup";
    system($command);
    // Démarre la procédure de téléchargement
    $taille = filesize($backup);
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Type: application/gzip");
    header("Content-Disposition: attachment; filename=$backup;");
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".$taille);
    @readfile($backup);
    // Supprime le fichier temporaire du serveur
    unlink($backup);
    ?>
    Pourtant les lignes de commande seules s’exécutent parfaitement !


    Sinon, ça m'arrangerait de faire un script shell (un batch), mais je ne sais pas comment le faire. Est-il possible de m'aider un peu ? (C'est peut-être plus simple que le script PHP et plus stable).

    Merci d’avance pour votre aide

  2. #2
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    les messages d'erreur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    Warning: filesize() [function.filesize]: stat failed for reporting-rhbdd_backup_08_08_2011.sql.gz in /application/Dashboard/backup_db.php on line 18
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 21
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 22
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 23
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 24
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 25
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 26
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 27
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 28
     
    Warning: Cannot modify header information - headers already sent by (output started at /application/Dashboard/backup_db.php:18) in /application/Dashboard/backup_db.php on line 29
     
    Warning: unlink(reporting-rhbdd_backup_08_08_2011.sql.gz) [function.unlink]: No such file or directory in /application/Dashboard/backup_db.php on line 33

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 660
    Points : 331
    Points
    331
    Par défaut
    Ce que je peux dire c'est que le fichier que tu essaies de supprimer n'existe pas.

    Ensuite, les erreurs sur le header, c'est un classique.

    Pour la première erreur, je pense que cela vient d'un problème de droit sur le dossier en question. Passe en chmod 777

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 692
    Points : 20 241
    Points
    20 241
    Par défaut
    Sinon, ça m'arrangerait de faire un script shell (un batch), mais je ne sais pas comment le faire
    Faudrait plus voir du coté des forums linux mais un truc du genre devrait marcher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #!/bin/bash
     
    cd /chemin/desire/pour/backups/
     
    mysqldump -uroot -ppass --opt bdd1 > bdd1.sql
    tar jcf bdd1.sql.tar.bz2 bdd1.sql
    rm bdd1.sql

  5. #5
    Membre confirmé
    Avatar de geforce
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2010
    Messages
    1 055
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2010
    Messages : 1 055
    Points : 559
    Points
    559
    Par défaut
    j'ai tester de faire sa mais sa marche pas

    la commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     22 12 * * * mysqldump -hlocalhost -uroot -pTBbillel21 reporting-rh | gzip > reporting-rh_bdd_backup_09_08_2011.sql.gz

    message : bash: 22: command not found

    si quelque peut me dirigés ou m'aidé

Discussions similaires

  1. Installation d'Openldap sous Red hat
    Par snach dans le forum Applications et environnements graphiques
    Réponses: 16
    Dernier message: 04/04/2007, 14h23
  2. oracle 9i sous red hat
    Par al_mer dans le forum Oracle
    Réponses: 1
    Dernier message: 06/11/2006, 10h09
  3. Installation imprimante Epson Stylus D88 sous Red Hat 9
    Par JavaAcro dans le forum Matériel
    Réponses: 4
    Dernier message: 10/03/2006, 22h21
  4. Modifier la date et l'heure sous Red Hat 9.0
    Par amigauss dans le forum Administration système
    Réponses: 1
    Dernier message: 17/01/2006, 15h57
  5. Probleme de configuration DNS sous Red Hat
    Par kaygee dans le forum Réseau
    Réponses: 4
    Dernier message: 08/01/2006, 19h26

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