Ankündigung

Einklappen
Keine Ankündigung bisher.

Rückgabe von exec mysqldump

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Rückgabe von exec mysqldump

    Hi,

    ich habe mir gerade einen abgebrochen beim Versuch mal eben kurz auf meiner Entwicklerkiste ein Skript zu schreiben, das mir 4 Datenbanken sichert.

    Das Ganze funktioniert zwar jetzt, allerdings verstehe ich nicht, wie ich den Erfolg der jeweiligen Sicherung abfrage.


    PHP-Code:
    $cmd_tpl 'C:\Programme\MySQL"MySQL Server 5.7"\bin\mysqldump.exe -h localhost -u dump_user -pdump_pw %s --lock-tables=false > %s_dump.sql';

        foreach(
    $dbs as $db_name) {
            
    $cmd sprintf($cmd_tpl,$db_name,$db_name);
            
    //echo $cmd;
            
    $done exec($cmd,$output,$result);
            
    var_dump($output);
            
    var_dump($result);
            
    var_dump($done);
        } 
    Als ich noch Probleme mit der Pfadangabe hatte war $result int(1), obwohl nur eine leere Datei produziert wurde.

    Jetzt werden die dump files korrekt erstellt und $result ist int(0) ?!

    Das kommt mir aber komisch vor. Eigentlich hätte ich es umgekehrt erwartet.

    Ansonsten sind

    $output ein leeres Array
    $done ist ein leerer String.

    Die Frage ist also: Wie kann ich im Skript prüfen, ob der Vorgang erfolgreich war?
    [B]Es ist schon alles gesagt. Nur noch nicht von allen.[/B]

  • #2
    Hm, hat sich wohl schon erledigt. Habe gerade folgende Auflistung gefunden bzgl. Rückgabe von mysqldump.exe:

    0 for Success
    1 for Warning
    2 for Not Found
    [B]Es ist schon alles gesagt. Nur noch nicht von allen.[/B]

    Kommentar


    • #3
      Das sind "exit codes". Jeder Prozess gibt unter *nix Systemen ein Wert zurück wenn er beendet wird. Eine 0 ist immer erfolgreichn. Jeder andere Wert ist als Fehler oder Warning zu verstehen. Was das genau bedeutet, hängt dann aber immer vom jeweiligen Programm ab.

      Kommentar


      • #4
        @erc: Vielen Dank, wusste ich noch gar nicht. Der Prozess wird sich bei mir unter Windows dann wohl genauso verhalten.
        [B]Es ist schon alles gesagt. Nur noch nicht von allen.[/B]

        Kommentar

        Lädt...
        X