mormel: MySQL-Dump Problem

Hallo,

Folgender Versuch eine MySQL-Datenbank zu sichern funktioniert bei mir lokal auf einem Windowsrechner, aber nicht online beim Provider, da wird immer nur eine leere Datei angelegt:

  
system("mysqldump --all -e -l --add_drop_table -h $host -u $user -p\"$pass\" $db > $file");  

Hostname, Datenbankname, User und Passwort stimmen, hab mit or die(...) auch keine Fehlermeldung erhalten.

Kann mir jemand helfen?

Gruß,
mormel

--
alles wird gut...
  1. Hey,

    system("mysqldump --all -e -l --add_drop_table -h $host -u $user -p"$pass" $db > $file");

    
    > Hostname, Datenbankname, User und Passwort stimmen  
    
    sicher? Benutze `print`{:.language-perl} statt `system`{:.language-perl} und vergewissere dich, dass tatsächlich in den Variablen steht, was du denkst, was drin stehen sollte, und dass der String so zusammengesetzt ist, wie er sein sollte.  
      
    Nebensächlicher Hinweis zum Stil: in Perl ist es nie notwending, stringbegrenzende Operatoren zu maskieren, weil sehr viele alternative zur Verfügung stehen. Bspw. lässt sich  
    ~~~perl
      
    "... \"foo\" ..."  
    
    

    lesbarer schreiben als

      
    qq(... "foo" ...)  
    qq{... "foo" ...}  
    qq[... "foo" ...]  
    qq!... "foo" ...!  
    qq|... "foo" ...|  
    qq/... "foo" .../  
    
    ~~~ etc. Siehe <http://perldoc.perl.org/perlop.html#qq%2fSTRING%2f-qq-quote%2c-double-%22-%22%22>  
      
    
    > hab mit `or die(...)`{:.language-perl} auch keine Fehlermeldung erhalten.  
    
    `system`{:.language-perl} liefert nicht unwahr bei einem Fehler zurück wie die meisten anderen Funktionen, deswegen kannst du dieses Idiom nicht verwendet. <http://perldoc.perl.org/functions/system.html> Prüfe stattdessen `$?`{:.language-perl} und `$!`{:.language-perl}.
    
    -- 
    水-金-地-火-木-土-天-海-冥