1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

backup für eine (mysql-)DB machen

  • maciek
  • 2. Juni 2004 um 14:45
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 2. Juni 2004 um 14:45
    • #1

    ich möchte mit PHP eine Backup-Funktion für eine (mysql-)DB schreiben. Und zwar sollte die Möglichkeit gegeben sein, daß über ein PHP-Skript die Struktur der DB sowie darin vorhandene Daten in eine .sql Datei exportiert werden. So ähnlich wie im PHPMyAdmin (-> Exportieren).

    Hat jemand schon ein ähnlich Skript geschrieben, oder weiß jemand wo man sich sowas Fertiges saugen könnte? Ist es schlauer das mit der system-Anweisung (mysqldump) zu machen, oder doch besser mit PHP selber zusammen zu stückeln?

    Thanx for help.

  • Online
    dose
    Punkte
    1.679
    Beiträge
    335
    • 2. Juni 2004 um 23:41
    • #2

    Besser mysqldump nehmen oder wenn Du unbedingt willst, die Verzeichnisse aus mysql/var kopieren...aber mit PHP is das irgendwie brrr ;)

  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 3. Juni 2004 um 00:07
    • #3
    Zitat von dose

    Besser mysqldump nehmen oder wenn Du unbedingt willst, die Verzeichnisse aus mysql/var kopieren...aber mit PHP is das irgendwie brrr ;)


    naja ... es über PHP zu machen, ist irgendwie die Vorgabe. Die Datenbank soll sich nämlich in einem regelmäßigen Abstand selbständig (automatisch) backupen. D.h. wenn sich der User einloggt und zur Datenbank connected, soll überprüft werden, ob das letzte Backup nicht zu weit zurück liegt, und wenn das der Fall ist, soll automatisch ein Backup gemacht werden.

    auf mysql/var hab ich (zB auf dem Inode-Server) so viel ich weiß keinen Zugriff. :( Aber PHPMyAdmin schafft das BackUp ziemlich gut, also muß es doch eine existierende, gut funktionierende Möglichkeit geben, wie man das ganze angeht. Bevor ich aber anfang mich durch die ganzen includes vom PHPMyAdmin zu hacken, wollte ich mal die Frage stellen, ob es nicht irgendwo sauber kodiert existiert.

  • RandomUser03
    Gast
    • 3. Juni 2004 um 09:58
    • #4

    ich würd mal vorschlagen du guckst dir den quellcode phpmyadmin

    aber ich glaube eher nicht das es ne funktion dafür gibt sondern das phpmyadmin wohl da selbst was zusammengeschraubt hat

  • Online
    dose
    Punkte
    1.679
    Beiträge
    335
    • 3. Juni 2004 um 13:18
    • #5

    Im PHP API gibts keine Funktion, was ich gesehen hab, das ganze wird dann wohl eher Richtung SELECT * FROM * laufen ;)
    Wenn Du Zugriff auf den Server hättest, hätt ich Dir für den Task nen simplen Cronjob empfohlen...

  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 3. Juni 2004 um 14:06
    • #6

    @Tschebel:
    yup. Bei PHPMyAdmin haben sie wie gesagt selber was zusammengebastelt. Nur haben die so viele features, die ich nicht brauche und so so viele includes, daß das alles ziemlich mühsam zum zamstückeln ist.

    SuperT:
    ich hab's jetzt mit select * from gemacht. Allerdings speichere ich es jetzt nicht in .sql-Format, sondern in php-arrays. Das ist insofern praktisch, als daß ich beim restore der DB das bak-File einfach includen kann und dann ohne weitere Spielereien auf die Daten zugreifen kann.

    Die Struktur der Datenbank wird bei mir sowieso über PHP angelegt, von daher muß ich die Struktur nicht herauslesen.

  • IceBreaker
    Punkte
    45
    Beiträge
    9
    • 29. Juni 2004 um 21:10
    • #7

    Hi...

    eine einfache Lösung kannst du mit mysqldump machen ( sofern du Zugriff auf dieses Tool hast ).. wenn du ein Skript brauchst - schick mir eine PM...

    andersrum könntest du schon eine PHP Lösung machen, nur diese wird sicher kompliziert. du muss die tabellen struktur auslesen, alle daten aus tabellen rauslesen, und einfach den ganzen kram in eine datei speichern. Wenn du die ausgelesenen daten speicherst, musst du sie in invertierter form speichern. dh. in der datei sollten dann CREATES und INSERTS stehen damit der backup wieder in die DB geladen werden kann....

    mfg

    ICE

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum