Automatsiches Backup der Datenbank

Begonnen von Sascha1981, 06 November 2003, 10:39:48

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Sascha1981

Hey @ll!!!

Meine Seite wächst und wächst!
Nun würde ich ein Scripte benötigen mit dem ich per Cronjob ein Backup der datenbank jeweils alle 12 std. machen kann!!
Gibt es so etwas schon?
Mit dem Modul das beim MX schon dabei ist kann ich ja kein Automatisches Backup machen da müßte ich ja allles immer manuel machen!
Vieleicht hat einer von euch eine Idee wie ich das am besten machen könnte!!!!

tequila

Frage hierzu:

1. Hast Du einen Root-Server und kannst Cron-Jobs konfigurieren?
2. Hast Du Anyhost-Zugriff auf Deine DB und ggf. einen Linux-Rechner 24h online?
3. soll es auf dem Webserver gespeichert werden oder auf einem anderen Server?

Sascha1981

1. Ich hab einen Root Server
2. Welchen Server ich hab das weiß ich jetzt nicht! Bin bei Domaingo.de
3. Solte am am Server gespeichert werden!!!!

Hier noch ein Auszug aus der FAQ bezüglich Cronjobs

? ... "CronJobs"?
! CronJobs bieten Ihnen die Möglichkeit, Scripte automatisch zeitgesteuert starten zu lassen. So können Sie Wartungs-Programme ohne manuellen Start laufen lassen oder auch während Ihrem Urlaub den vorher hinterlegten Newsletter tagesgenau versenden. Die Möglichkeiten sind dabei unbegrenzt - genauso wie die Anzahl der Cronjobs.


[Editiert am 6/11/2003 von Sascha1981]

tequila

Na dann mußt Du Dich für einen Cron-Job etwas mit Shell-Programmierung auseinander setzen und einfach den Inhalt der "admin/modules/backup.php"-Datei in eine Shell-Datei packen, z.B.


#!/bin/sh
#
# Shell-Script Demo für MySQL-Backup
#

# Script-Config
BACKUPDATE=`date +"%A_%d-%m-%Y_%H.%M"`
BACKUPPATH=/hier/der/pfad/zum/speichern
DATABASE=datenbankname
DATABASEUSER=datenbankuser
DATABASEPWD=datenbankpasswd

if [ ! -d $BACKUPPATH ]
   then
   mkdir -p $BACKUPPATH
fi

nice -n 20 mysqldump -u $DATABASEUSER -p$DATABASEPWD $DATABASE > $BACKUPPATH/$BACKUPDATE.sql

exit 0



dann mußt Du das File noch auf:

chmod 755 filename

setzen und es am besten (ist am einfachsten) in das Verzeichnis:

/etc/cron.daily

kopieren, dann wird es alle 24h ausgeführt.


Habe ich jetzt nicht getestet, Dir nur so dahin getippert ... spielen mußt Du schon selbst

[Editiert am 6/11/2003 von SiteAdmin Tequila]

jubilee

Hallo !
 
ZitatInhalt der "admin/modules/backup.php"-Datei in eine Shell-Datei packen, z.B.
Hmmm WIESOOO ???
Er kann doch php-Scripte via Cron aufrufen. Es sei den er hat PHP wirlich nur als Apache-Modul installiert. Aber bei den meisten Distributionen ist PHP Vollinstallation standard.
MfG
jubilee

Sascha1981

Also von Shell hab ich keine ahnung!
Wie kann ich es denn sonst machen da gibt es doch bestimmt ein PHP Scripte oder nicht???

Sascha1981

Hab bei mir grad ein php scripte gefunden!!

  phpmybackup mit dem teil müßte es doch gehn oder??

tequila

@jubilee

Nur wenn er das Script aufruft, dann hat das Script noch lange nicht die globalen Variablen (Datenbankdaten, Backuppfad), ansonsten hast Du recht, klar kann er auch PHP-Scripte über Cron ausführen, aber dieses so nicht (und das Admin-Login wäre auch nicht da, also würde das Script abbrechen ... bla, bla, bla)

@Sascha

Ich hab Dir ein Shell-Programm da hin geschrieben, das kannst Du in eine TXT kopieren, diese dann nennen wie Du will, ausführbar machen und starten, fertig.
Das phpbackupscript von Dir da kenne ich nicht

jubilee

@Tequila:
Na klar das es das vorher umbauen muss. das muss er halt ja auch machen, wenn er sich da ein Shellscript draus bastelt.
und vielleicht wäre es ja einfacher gewesen (für ihn) wenn er halt das teil in php modifiziert hätte .....
Ausserdem meine ich mich erinnern zu können, das ich mit jemand anders zusammen schon mal so ein PHP-Script geschrieben hatte. Das hat einen Dump von der Datenbank erstellt (per cron gesteuert) und konnte das dann auch gleich per E-Mail versenden (natürlich nur wenn der Dump nicht zu groß war).
Mag vielleicht noch irgendwo im Board zu finden sein. ist aber bestimmt schon 1 Jahr her......
MfG
jubilee


jubilee

Hallo !
Ja, ich glaub das war das. Mit dem anderen thread zusammen, auf den da verwiesen wird. Von 11/2002 also kommt ja hin mit 1 Jahr ;)
MfG
jubilee