kostenloser Webspace werbefrei: lima-city


Backup-Lösung für Homepage (FTP und MySQL)

lima-cityForumDie eigene HomepageHomepage Allgemein

  1. Autor dieses Themas

    r*k

    Hallo zusammen,

    da wir uns hier ja selber um das Backup kümmern müssen habe ich mal ein wenig nach einer halbwegs automatischen Lösung gesucht und folgendes gefunden:

    Als Basis Cobian Backup http://www.educ.umu.se/~cobian/cobianbackup.htm

    Hier kann man als Quelle auch einen FTP-Server angeben und das Ergebnis dann nach wunsch ref="/tag/packen">packen und verschlüsseln.
    Als Backup ist u.a. Vollbackup und incementelles Backup möglich.
    Ein Zeitplaner ist auch mit an Bord.

    Um jetzt auch noch die MySQL-Datenbank zu sichern muss man vorher noch ein Datenbank-Dump erstellen. Das geht z.B. mit MySQLDumper. Geade bei kleineren Datenbanken genügt aber ein einfaches Script:

    <?php
    $datenbankhost = “Hostname (in der Regel: localhost)”;
    $datenbankuser = “Username”;
    $datenbankpasswort = “Passwort”;
    $datenbankname = “Datenbankname”;
    $pfad = $_SERVER['DOCUMENT_ROOT']."/backup/";
    $Zeitstempel = date("-Ymd-His");
    
    foreach(glob($pfad.$datenbankname."*.sql.gz") as $fn) {
      echo "Delete: ".$fn."\n";
      unlink($fn);
    } 
        
    echo "Backup: ".$datenbankname."\n";
    echo "Ziel: ".$pfad.$datenbankname.$Zeitstempel.".sql.gz"."\n";
    
    $connect = @mysql_connect($datenbankhost, $datenbankuser, $datenbankpasswort);
    if (!$connect) {
    die(mysql_error());
    }
    mysql_select_db($datenbankname);
    $f = gzopen($pfad.$datenbankname.$Zeitstempel.".sql.gz", "w9");
    $tabellen = mysql_list_tables($datenbankname);
    while ($zellen = mysql_fetch_array($tabellen)) {
    $table = $zellen[0];
    echo "Tabelle: ".$table."\n";
    $res = mysql_query("SHOW CREATE TABLE `$table`");
    if ($res) {
    $create = mysql_fetch_array($res);
    $create[1] .= ";";
    $line = str_replace("\n", "", $create[1]);
    gzwrite($f, $line."\n");
    $data = mysql_query("SELECT * FROM `$table`");
    $num = mysql_num_fields($data);
    while ($row = mysql_fetch_array($data)){
    $line = "INSERT INTO `$table` VALUES(";
    for ($i=1;$i<=$num;$i++) {
    $line .= "'".mysql_real_escape_string($row[$i-1])."', ";
    }
    $line = substr($line,0,-2);
    gzwrite($f, $line.");\n");
    }
    }
    }
    gzclose($f);
    
    echo "fertig."."\n";
    ?>


    Um das vor dem Backup ausführen zu können gibts in Cobian Backup unter "Ereignisse -> vor Sicherung" die Möglichkeit Programme zu starten. Hier kann man jetzt mit Hilfe von WGET das PHP-Script anstossen:

    wget www.meineSeite.de/pfad/MeinBackupScript.php -O -


    Das "-O -" am Ende sorgt dafür, das keine Ausgabedatei erstellt sondern nur das PHP-Script gestartet wird.


    Einmal eingerichtet kann man jetzt beliebeig oft mit einem Knopfdruck einen Komplettsicherung seiner Homepage erstellen.

    Gruß,
    Thomas
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. d************r

    Das sieht sehr gut aus, kann ich ja mal bei mir auf den Home-Server ausprobieren, denn jedesmal rsync laufen lassen finde ich auch nicht so gut und mit dieser Lösung hat man eine PHP variante, sollte man als kleins TUT aufnehmen.
  4. vielleicht kann man das ganze ja auch per cronjob starten, wäre einfacher als das per hand zu starten.. und wenn man mal 2 bis 3 wochen nicht da is wird das ja eh nix, folglich -> http://www.cron-job.org/ ist for free, und ganz easy einzurichten.. aber ich glaub das mit packen (zippen) wird nix, das datei format ist doch hier nicht erlaubt!?
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!