Hallo,
ich habe mir folgendes kleines Script geschrieben, um täglich ein Backup der Datenbank zu machen:
Das ganze läuft auch ganz gut, es werden die Dumps der Datenbanken erstellt, in der Zwischenzeit ist die Seite im Wartungsmodus. Wenn die Dumps fertig sind öffnet die Seite wieder und das Script komprimiert noch die *.sql Dateien.
Nun würde ich diese am liebsten entweder:
a) An eine E-Mail Adresse schicken
b) Auf einen externen FTP Server uppen
Was davon würdet ihr mir empfehlen? Und falls ihr b) empfehlen solltet, wie stelle ich das am geschicktesten an.
Eine letzte Frage wäre noch, ob ich die erstellten Archive mit einem Passwort schützen kann (direkt per PHP) und ob man die vielleicht noch kleiner bekommt. Forum Backup hat komprimiert immerhin noch 38MB, als normale .sql knapp 1,3 GB ist zwar schon eine extrem gute Komprimierung allerdings finde ich, ist das trotzdem noch viel
ich habe mir folgendes kleines Script geschrieben, um täglich ein Backup der Datenbank zu machen:
PHP:
<?php
/* Zugangsdaten */
$db_host = 'foo';
$db_user = 'foo';
$db_pass = 'foo';
/* Datenbanken festlegen */
$haupt_db = 'foo';
$foren_db = 'bar';
/* Zur DB verbinden und Datenbank auswählen */
mysql_connect($db_host,$db_user,$db_pass);
mysql_select_db($haupt_db);
/* Seite auf Wartungsmodus setzen */
mysql_query('UPDATE wartung SET start='.time().', grund="Zur Zeit wird ein Backup der Datenbank erstelt. Wir sind in wenigen Augenblicken wieder verfügbar." LIMIT 1');
/* Haupt-DB backupen */
exec("mysqldump --host=".$db_host." --user=".$db_user." --password=".$db_pass." --opt ".$haupt_db." > /var/www/web4/html/backup/script_".date("d-m-y").".sql");
/* Foren-DB backupen */
exec("mysqldump --host=".$db_host." --user=".$db_user." --password=".$db_pass." --opt ".$foren_db." > /var/www/web4/html/backup/forum_".date("d-m-y").".sql");
/* Seite wieder freigeben */
mysql_query('UPDATE wartung SET grund="" LIMIT 1');
/* MySQL Verbindung schließen */
mysql_close();
/* Backups komprimieren */
exec("gzip /var/www/web4/html/backup/script_".date('d-m-y').".sql");
exec("gzip /var/www/web4/html/backup/forum_".date('d-m-y').".sql");
?>
Das ganze läuft auch ganz gut, es werden die Dumps der Datenbanken erstellt, in der Zwischenzeit ist die Seite im Wartungsmodus. Wenn die Dumps fertig sind öffnet die Seite wieder und das Script komprimiert noch die *.sql Dateien.
Nun würde ich diese am liebsten entweder:
a) An eine E-Mail Adresse schicken
b) Auf einen externen FTP Server uppen
Was davon würdet ihr mir empfehlen? Und falls ihr b) empfehlen solltet, wie stelle ich das am geschicktesten an.
Eine letzte Frage wäre noch, ob ich die erstellten Archive mit einem Passwort schützen kann (direkt per PHP) und ob man die vielleicht noch kleiner bekommt. Forum Backup hat komprimiert immerhin noch 38MB, als normale .sql knapp 1,3 GB ist zwar schon eine extrem gute Komprimierung allerdings finde ich, ist das trotzdem noch viel