Forum: PC-Programmierung Cron Backup erstellen


von BackUpper (Gast)


Lesenswert?

Wie muß ein PHP- Skript aussehen, das alle Daten im aktuellen 
Verzeichnis inklusive aller Daten in einer bestimmten MYSQL-Datenbank in 
eine tar oder zip-Datei komprimiert, damit ich dieses als Cron-Job 
regelmäßig aufrufen kann.

Besser als eine PHP-Datei ist ein Cron-Befehl, den ich direkt unter 
PLESK verwenden kann.

von reparierer (Gast)


Lesenswert?

Shell-Befehle dazu:

mysqldump -uSQLUSER -pPASSWORD database | gzip - > 
/path/to/stuff/mysql-backup.gz

tar -zcf /path/to/backup/backup.tar.gz /path/to/stuff/

Dann ist der ganze Kladderadatsch in backup.tar.gz

Das ganze kannst Du aus einem Shell- oder PHP-Skript aufrufen, wie du 
magst.

von BackUpper (Gast)


Lesenswert?

Das scheint zu funktionieren, allerdings bekomme ich nach einiger Zeit 
ein

> Internal Server Error
>
> The server encountered an internal error or misconfiguration and was unable to
> complete your request.
>
> Please contact the server administrator, <email> and inform them of the time the
> error occurred, and anything you might have done that may have caused the error.
>
> More information about this error may be available in the server error log.
> Apache Server at domain.com Port 80

Es ist ein Virtual Server, ich kann also einiges ändern. Was sollte ich 
ändern?

von reparierer (Gast)


Lesenswert?

Guck in die Log-Files (z.B. /var/log/apache2/error.log) und schaue nach 
was das Problem war; vielleicht Skriptlaufzeit zu lang? (sudo tail -f
/var/log/apache2/error.log)

Wenn Du einen Vserver mit SSH-Zugang hast, würde ich das erst mal auf 
der Shell testen und dann das ganz einfach als Shell-Skript von cron 
aufrufen lassen.

von bluppdidupp (Gast)


Lesenswert?

Empfehlenswertes Tool ist auch:
http://www.unixwiz.net/tools/lockrun.html
"Before launching the given command, it insures that another instance of 
the same command is not already running."

crontab-Zeile schnell zusammenklicken:
http://www.corntab.com/

von kopfkratzer (Gast)


Lesenswert?

Oder Du installierst den mysqldumper http://www.mysqldumper.net/ und 
richtest den passend ein, kannst dann auch die DUMPs direkt in einen 
email Account laufen lassen ...

von (prx) A. K. (prx)


Lesenswert?

Obacht bei mysqldump: Optionen durchforsten, sonst fehlen ein paar 
Sächelchen im Backup, wie triggers und stored procedures.

von Randall L. (randall)


Lesenswert?

Ein weiterer crontab Syntax Generator ist 
http://www.crontab-generator.org/.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.