Zum Inhalt springen

MySQL hat Daten verloren


MichaelSchmuck

Empfohlene Beiträge

Hallo,

Folgendes ist mir heute, besser gesagt gestern auf der Arbeit Passiert.

Wir haben eine MySQL Datenbank, welche jede nacht durch einen Schduler aufruf auf einer AS400 durch ein Programm gefüllt wird mit daten aus der besagten AS400.

Seit gestern nachmittag sind nurnoch Daten bis einschließlich zum 19. Janaur 2004 im System, alles neuer ist weg, ganze 3 Wochen!

So, wir haben eine Bandsicherung welche wochentags jeden morgen um 3 Uhr läuft. (leider keine Wochensicherung ... aber das wird sich jetzte ändern!)

Das älteste Band das wir noch haben ist vom 04.02.2003. Auf allen Bändern die wir haben, sind die MySQL Daten Dateien vom 20.01.2004 17:46 (also das ist die letzte Änderung der physikalischen Datei auf der Platte), also demnach wurden die Daten seit dem 20.01 nicht mehr in die Dateiengeschrieben.

Die Daten waren aber einmal in der Datebank, da die Anwender bis zum, 11.02 mit den Daten arbeiten konnten! Es existiert auch ein Ausdruck der Daten auf welchem die restlichen Daten des Januars zu sehen. Die Daten waren also einmal im System. Zuerst habe ich den Anwendern das nicht geglaubt, aber dass keiner 3 Wochen die Daten sichtet und der Ausdruck haben mich fest überzeugt das die Daten einmal im System waren!

Weiterhin ist Fakt, das wir gegen 14 Uhr am 11.02 den Server deamon neue gestartet haben! Bevor wir die taten kamen noch anrufe bezüglich des Programms, kurz nach dem restart wurde und gemeldet das die Daten weg sind.

Nur wo waren die Daten dann wenn nicht in den physikalischen Dateien auf der HD? Im RAM? => 3 Wochen lang kann sich das die MySQL das nicht erlauben!

Die BIN Files haben wir gesichtet, es sind wirklich nach dem 20.01 Inserts und Updates gemacht worden, also wurde mit den Daten gearbeitet, aber es wurde KEIN delete auf die besagten Tabellen gemacht! (es sind 3 Tabellen die gefüllt werden, und alle 3 enden mit dem 19 Januar)

Meine Theorie ist wie gesagt, das die Daten nie geschrieben wurden, sie waren in irgend einem temporären Speicher (tempfiles, ram ... eine ahnung wo), und druch den Restart des Deamons wurden die nicht mehr gefüllten Dateien herbeigezogen.

Das kling seht komisch, kann es mir aber selber auch nicht anders Erklären!

Die Software die mit den Daten arbeitet hab ich und eine Kollege durchsucht und keine logischen Fehler (schreiben in falsche DB oder ähnliches) gefunden!

Hatte jemand hier schon einmal ein solches problem gehabt? Ich bin vor meinem Chef echt in erklärungsnöten. Immerhin sind hier 3 Wochen Arbeit einer arbeitskrft verloren gegangen. Vielleicht hat ja noch jemand eine gute Theorie???

Bin für jede noch so kleine Hilfe mehr als dankbar!

Gruß,

Michael Schmuck

P.S.

Unsere Maschine:

FreeBSD 4.2

MySQL 4 Stable

Datenbanktabellen: MyISAM

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi!

Original geschrieben von MichaelSchmuck

Die BIN Files haben wir gesichtet, es sind wirklich nach dem 20.01 Inserts und Updates gemacht worden, also wurde mit den Daten gearbeitet, aber es wurde KEIN delete auf die besagten Tabellen gemacht! (es sind 3 Tabellen die gefüllt werden, und alle 3 enden mit dem 19 Januar)

Hm, wenn du die logs hast, kannst du das ganze doch wiederherstellen.

War vielleicht die Partition voll?

Gruß Jaraz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

die Daten sind aktuell erstmal zweitrangig ... primär geht es um die Ursachenforschung, weil sowas nicht passieren darf.

Die Partition wo die Daten liegen ist 49 Gig groß, ist zwar unwarscheinlich das die voll ist/war weil es eben nur eine Libary betroffen hat, anderen Datenbanken gingen ja ohne Probleme.

Das größe was mit iritiert ist, das die Bandsicherung nur alte Dateien gesichert hat.

Ich werde die Partioion checken, bin aber aktuell der meinung, dass nur 7 gig von 49 gig belegt sind.

mfg,

Michael Schmuck

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das ist doch mal ein wirklich interessantes Problem.

Der Haken: MySQL würde ich nicht gerade für mein Steckenpferd halten, und von FreeBSD dachte ich bis dato, es seien Cornflakes...

Aber ok, vielleicht hast du ja ein paar Antworten für mich.

Frage I: Wie groß dürfen Daten-Dateien unter FreeBSD 4.2 maximal sein? 2GB, 4GB, ... mehr? MySQL mag ja Dateigrößen von mittlerweile einigen TB verkraften, aber schafft es das BS auch?

Frage II: Ich kenne mich mit MySQL zu wenig aus - und habe ganz offensichtlich dringenden Nachholebedarf. Flushed MySQL die Daten nicht nach einer festgelegten Zeitspanne und/oder Datengröße? Wenn ja, warum gab es keine Fehlermeldung, wenn die entsprechenden Updates, etc. fehlgeschlagen sind?

Frage III: Soweit ich gelesen habe, gibt es mit FreeBSD unterhalb von Version 4.4 Probleme, wenn das MySQL-DBMS versucht, multiple CPU's zu nutzen ... Liegt hier der Hund begraben?

Referenzen:

www.freebsdforums.org

www.bitmechanic.com

www.mysql.com

<agitationsmode>

Ich stelle mir gerade vor, was in einer echten Produktivumgebung für Schaden entstehen könnte, wenn man MySQL benutzen würde. Drei Wochen Arbeit im Nirvana ... 'luja, soag i, 'luja!

Sparsamkeit hin, Sparsamkeit her. Nicht umsonst heißt es wohl: Wer billig kauft, kauft zweimal. ;)

Nein, im Ernst: Ein DBMS, das bei Fehlern - und JEDER nicht vollständig erfolgreich ausgeführte Auftrag ist ein Fehler - nicht rummeckert, ist mir suspekt. ICH würde meinem Chef bei dieser Gelegenheit vorrechnen, wie viel man beim Erwerb eines professionellen Spielzeugs, wie Oracle's oder MS's DB-Server, sparen könnte, falls dieser Fehler noch einmal auftritt, wenn 20 oder 30 Leute nur eine einzige Woche nicht bemerken, dass da etwas faul ist. Dann fehlen die Produktivergebnisse einer ganzen Arbeitskraft für ein komplettes Jahr ... + mindestens 75.000 EUR Gehalt. (Ganz zu schweigen von den "Randverlusten", wie entgangener Umsatz, etc. Dafür könnte ich mir eine ganze technische Spielwiese finanzieren.

Und das alles nur, weil mein Chef für seine Armbanduhr mehr bezahlen wollte, als für das Herz seines Unternehmens?

</agitationsmode>

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ach ja und mit Oracle ist man vor Bedienfehlern Hardwaredefekten, Betriebssystem inkompatibilität , sicher.

Träum weiter.

Je komplexer das System je höher die Fehlerrate.

Fehlermeldungen zu bemerken setzt auch vorraus, das man überhaupt benachrichtigt wird.

Wie wird die Datenbank überhaupt gesichert?

Wird sonst in die entsprechenden Dateien geschrieben oder gibt es den Fehler unbemerkt schon länger?

Ältere Monatsbänder rauskramen und mal gucken.

Was war am 19.01?

Zum Beispiel andere defekte an Hardware im Haus?

Ich habe schon einen Abteilungsleiter wie einen Schlosshund heulen sehen, weil über 300000 Buchungen über einen 3 Jahreszeitraum weg waren.

3 Jahre gesichert aber nie nachgeschaut ob auch wirklich was auf den Bändern ist. Da hilft auch kein Oracle!

Gruß Jaraz

PS: Ich arbeite mit beiden und würde nie auf die Idee kommen, wenn die Mysql Features reichen, Oracle einzusetzen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

@jaraz

Ach ja und mit Oracle ist man vor Bedienfehlern Hardwaredefekten, Betriebssystem inkompatibilität , sicher.
Ach weißt du, ich halte nicht viel von persönlichen Befindlichkeiten.

Eben weil man NICHT sicher sein kann, sollte man sich so weit wie irgend möglich absichern, nicht wahr?

Alles was existiert, gibt es aus gutem Grunde. Doch wenn es Sicherheit nicht nur eine theoretische Rolle spielt, dann gehe ich ganz gern auf Nummer Sicher.

Wenn ich bergsteigen gehe, nehme ich nicht die billigste Wäscheleine, weil ich dem Strick mein Leben anvertrauen muss; wenn ich ein Auto kaufe, achte ich darauf, dass es einige Features, wie Airbags, ABS, etc. besitzt; wenn ich mit dem Fallschirm abspringen will, habe ich ein Notsystem dabei, wenn ich ... hey, fällt dir etwas auf? ;)

Sobald es um "persönliche Sicherheit" geht, sind wir ganz offensichtlich recht gründlich; oder würdest du ruhigen Gewissens deinen Fallschirm im Grabbelmarkt kaufen?

Warum sollte ich also nicht auch in den mir anvertrauten Dingen eine gewisse (ja, redundante) Sicherheit walten lassen?

Fehlermeldungen zu bemerken setzt auch vorraus, das man überhaupt benachrichtigt wird.
Eben! Genau das meine ich. Wenn "mein" System bei der Ausführung einer Aufgabe scheitert - und dabei ist es vollkommen gleichgültig, wann, warum, wie und was eintritt, dann werde ich benachrichtigt. Das will und kann ich nicht missen. Ich kann es mir schlicht nicht leisten, darauf zu hoffen, dass schon alles gut gehen wird...

Ich habe schon einen Abteilungsleiter wie einen Schlosshund heulen sehen, weil über 300000 Buchungen über einen 3 Jahreszeitraum weg waren.

3 Jahre gesichert aber nie nachgeschaut ob auch wirklich was auf den Bändern ist. Da hilft auch kein Oracle!

Yep. Zweifellos. Doch was du hier ansprichst, ist MENSCHLICHES Versagen. Dagegen hilft nur eine Schrotflinte - oder wahlweise die Androhung persönlicher Haftung. (Stell' dir mal vor, dein Chef würde sagen: "Hey, es ist mir egal, welche Systeme Sie einsetzen, aber ich mache Sie persönlich für eventuelle Verluste haftbar."; was würdest du nehmen, um Unternehmensdaten zu sichern? MySQL? Oracle? MS? DB2? Kombinationen? In jedem Fall würdest du nicht halb so "leichtsinnig" sein, wenn es dein Hintern wäre, der hinhalten müsste, oder?! ;))

Aber genug davon.

Lass' uns mal überlegen, warum die Daten nicht geschrieben wurden, und warum keine entsprechende Sicherheitsmeldung kam.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...