Jens: Cronjob selber machen ?

Hallo,

ich habe für einen Kunden eine Seite programmiert in die er vom aminbereich selber daten einpflegen kann.
Nun hat er schon ca. 100 objekte  mit ordentlich Daten eingepflegt und das war schon am ersten Tag.
Ich bekomme langsam Panik :-) denn das ist meine erste Seite der Art und in diesem Umfang und dazu kommt, das ich auf dem Gebiet mysql sehr unerfahren bin.
Aus diesem Grund habe ich überlegt die Datenbank jeden Tag zu sichern in einem textfile oder so.
Da ich aber keine Zeit und Lust dazu habe jeden Tag einen dump per hand zu kopieren habe ich mir überlegt so eine Art "cronjob" zu programmieren.
Der Provider unterstützt das nur gegen einen Aufpreis , den ich eigentlich umgehen will.
Ich habe mir gedacht das ich einfach eine Knopf in den Adminbereich einbaue, der den dump in eine textdatei kopiere.
Ist das eine gute Idee und wenn ja gibt es einen praktischen mysql-Befehl der mir den dump ausgibt und gibt es eine Möglichkeit außer Cronjobs diesen dump automatisch zu speichern ?

Fragen über Fragen.

Über Anregungen oder Links zu dem Thema wäre ich dankbar.

mfg

Jens

  1. Hallo
    also erstmal ich kenn mich mit Cronjobs nicht aus.
    aber mir fällt da spontan was ein ruf in deiner Startseite ein script aus das diesen Datensierungs befehl ausführt - dann wird wenn 1 mal pro Tag jemand die Seite aufruft alles gespeichert - wenn du damit noch einen Counter verbindest dann kannst du machen das das nur höchstens ein mal pro Tag passiert.
    Aber villeicht dauert das laden der Seite dann zu lang - weis nich genau wie gross der DB inhalt ist.

    hoffe es klappt :)

    Alex

  2. moin

    Ist das eine gute Idee

    jo, find ich schon nur der kunde darf halt nicht vergessen das update zu erstellen deswegen ist dies eine gute lösung wenn er jeden tag mit dem prog arbeitet. ansonsten ist ein autosicherung - trotz aufpreis - wohl besser.

    eine direkte funktion ist mir nicht bekannt aber du kannst dir ja einfach eine cvs-datei erstellen indem du alles mit ";" getrennt in eine datei schreibst. sollte doch eigentlich recht einfach sein.

    xxx;dasdf;dasadfs;
    xxy;dafas;fw3rwer;
    etc..

    tschau

  3. Hi!

    Ich habe mir gedacht das ich einfach eine Knopf in den Adminbereich einbaue, der den dump in eine textdatei kopiere.
    Ist das eine gute Idee und wenn ja gibt es einen praktischen mysql-Befehl der mir den dump ausgibt und gibt es eine Möglichkeit außer Cronjobs diesen dump automatisch zu speichern ?

    Also, mit einem Cronjob hat das ganze ja nix mehr zu tun. Aber, ich würd einfach am Ende den PHP-Scripts, das die Daten in die Datenbank schreibt, ein Script aufrufen, daß ein Backup der Datenbank erstellt (vielleicht vorher 1 Minute wartet oder so, falls die Datenbank noch mit den Eingaben beschäftigt sein sollte. Und vielleicht über eine kleine Datei kontrolliert, daß solche Backups nur 1 mal alle X Studen gemacht werden. Nicht das dein Kunde 20 mal auf Reload drückt und dann dein Server in die Knie geht... je nachdem wie groß der Export aus der DB ist).

    Gruß
    csx

    1. Hallo,

      Gut dann versuche ich mich mal daran.
      Habe mir gerade die PHP-Datei die bei phpmyadmin für den dump zuständig ist angeschaut. Da raff ich nicht so ganz durch.
      Gibt es eine mysql-Abfrage die einem den kompletten Inhalt + Daten der Datenbank ausgibt oder muß ich jede Tabelle einzeln abfragen und in die  Textdatei schreiben.

      mfg

      Jens

  4. hi!

    habe selber ähnliches vor und will auch versuchen die extra-kosten zu umgehen.

    eine alternative, die ich mir überlegt habe - aber leider noch nicht ausprobieren konnte - ist, das skript für das backup zu schreiben und dann auf deinem eigenen rechner zu hause eine verknüpfung zu selbigem anzulegen. so könnte man dann bequem das backup starten und die verknüpfung ggf. sogar regelmäßig als geplante task unter windows ausführen. das setzt natürlich voraus, daß der rechner zu den entsprechenden zeiten garantiert eingeschaltet ist.

    das nur so als idee, laufn müßte es eigentlich, übernehme aber keinerlei gewähr ;-)