Datenbank crash

Datenbank crash

am 06.02.2006 20:57:48 von Maros Kollar

Hallo,
bei einem Rechner ist unlängst ein Defekt auf der HD aufgetreten. Dieser
konnte zwar behoben werden, allerdings kann ich jetzt auf etliche
Tabellen in der Datenbank nicht mehr zugreifen. Die Datendateien
scheinen so weit in Ordnung zu sein (mit isamchk und myisamchk
überprüft),jedoch versucht Mysql teilweise falsche Datendateien zu öffnen!

Hier ein Beispiel:
/database/bibliothek.ISD
/database/bibliothek.ISM
/database/bibliothek.frm
/database/dynkat.MYD
/database/dynkat.MYI
/database/dynkat.frm

'SHOW TABLES' zeigt beide Tabellen an. Die 'bibliothek' Tabelle kann ich
problemlos öffnen. Bei 'dynkat' kommt die Meldung "ERROR 1017: Can't
find file: 'dynkat.ISM' (errno: 2)".

Irgendwelche Hinweise? Muss ich eine besondere Startoption angeben um
MyISAM zu benutzen?

Beste Grüße
Maroš

Re: Datenbank crash

am 07.02.2006 00:05:58 von Dirk Brosowski

Maros Kollar schrieb:
> Hallo,
> bei einem Rechner ist unlängst ein Defekt auf der HD aufgetreten. Dieser
> konnte zwar behoben werden, allerdings kann ich jetzt auf etliche
> Tabellen in der Datenbank nicht mehr zugreifen. Die Datendateien
> scheinen so weit in Ordnung zu sein (mit isamchk und myisamchk
> überprüft),jedoch versucht Mysql teilweise falsche Datendateien zu öffnen!
>
> Hier ein Beispiel:
> /database/bibliothek.ISD
> /database/bibliothek.ISM
> /database/bibliothek.frm
> /database/dynkat.MYD
> /database/dynkat.MYI
> /database/dynkat.frm
>
> 'SHOW TABLES' zeigt beide Tabellen an. Die 'bibliothek' Tabelle kann ich
> problemlos öffnen. Bei 'dynkat' kommt die Meldung "ERROR 1017: Can't
> find file: 'dynkat.ISM' (errno: 2)".
>
> Irgendwelche Hinweise? Muss ich eine besondere Startoption angeben um
> MyISAM zu benutzen?

Ich scheine etwas blind zu sein, könntest du mir kurz auf die Sprünge
helfen und mir mitteilen, in welcher Zeile du dein Betriebssystem und
die beteiligten MySQL-Versionen geschrieben hast? Danke.

Gut wäre es auch, wenn du mitteilen würdest, was "behoben" genau
bedeutet... Neue Harddisk und die Daten aus einem Backup eingespielt
oder ein Zauberlehrling, dessen Zauberstab durchgebrochen war?

Grüße

Dirk

Re: Datenbank crash

am 08.02.2006 07:57:03 von Maros Kollar

hoppala,
das habe ich wohl vergessen:
- mysql 3.23
- irgendein nicht mehr ganz so firsches suse
- die Fehler habe ich mit e2fscheck behoben

Betse Grüße
Maroš


> Ich scheine etwas blind zu sein, könntest du mir kurz auf die Sprünge
> helfen und mir mitteilen, in welcher Zeile du dein Betriebssystem und
> die beteiligten MySQL-Versionen geschrieben hast? Danke.
>
> Gut wäre es auch, wenn du mitteilen würdest, was "behoben" genau
> bedeutet... Neue Harddisk und die Daten aus einem Backup eingespielt
> oder ein Zauberlehrling, dessen Zauberstab durchgebrochen war?

Re: Datenbank crash

am 08.02.2006 12:38:45 von Dirk Brosowski

Maros Kollar schrieb:
> hoppala,
> das habe ich wohl vergessen:
> - mysql 3.23
> - irgendein nicht mehr ganz so firsches suse
> - die Fehler habe ich mit e2fscheck behoben

Also von behoben kann also nicht die Rede sein. Du hast versucht etwas
zu retten. Deine Datendateien werden aber fast sicher korrupt sein.

Ist der Inhalt der frm - Datei okay? Also lesbar? Die IDX-Datei kannst
du eigentlich löschen und den Index rebuilden lassen. Die Datendatei MYD
ist aber sehr wichtig.

Auf jeden Fall erstmal ein Backup dieser Dateien anlegen.

Aus irgendeinem Grund scheint MySQL der Meinung zu sein, dass es sich um
ISAM-Tabellen handelt, daher die Vermutung, dass die frm-Datei nicht
okay ist. Wenn die defekt ist, weiss ich nicht weiter....

Versuch mal ein repair auf der Tabelle, und lass mal hören, was MySQL
dazu sagt.

Am besten wäre es natürlich du hättest ein Backup ...

Grüße

Dirk



>
> Betse Grüße
> Maroš
>
>
>> Ich scheine etwas blind zu sein, könntest du mir kurz auf die Sprünge
>> helfen und mir mitteilen, in welcher Zeile du dein Betriebssystem und
>> die beteiligten MySQL-Versionen geschrieben hast? Danke.
>>
>> Gut wäre es auch, wenn du mitteilen würdest, was "behoben" genau
>> bedeutet... Neue Harddisk und die Daten aus einem Backup eingespielt
>> oder ein Zauberlehrling, dessen Zauberstab durchgebrochen war?

Re: Datenbank crash

am 08.02.2006 13:09:23 von Maros Kollar

Hallo,


> Also von behoben kann also nicht die Rede sein. Du hast versucht etwas
> zu retten. Deine Datendateien werden aber fast sicher korrupt sein.

ich hab die Datendateien jeweils mit isamcheck und myisamcheck
kontrolliert und repariert. Die anschließende Kontrolle hat keine Fehler
mehr ergeben.

> Ist der Inhalt der frm - Datei okay? Also lesbar?
> Auf jeden Fall erstmal ein Backup dieser Dateien anlegen.
>
> Aus irgendeinem Grund scheint MySQL der Meinung zu sein, dass es sich um
> ISAM-Tabellen handelt, daher die Vermutung, dass die frm-Datei nicht
> okay ist. Wenn die defekt ist, weiss ich nicht weiter....

Ich glaube inzwischen auch dass hier der Hund begraben liegt. Öffnen
kann ich die frm Dateien zwar, aber ich kann nicht sagen inwiefern sie
korrekt sind.

Beste Grüße
Maroš

Re: Datenbank crash

am 08.02.2006 14:37:16 von Axel Schwenke

Dirk Brosowski wrote:
>
> Aus irgendeinem Grund scheint MySQL der Meinung zu sein, dass es sich um
> ISAM-Tabellen handelt, daher die Vermutung, dass die frm-Datei nicht
> okay ist. Wenn die defekt ist, weiss ich nicht weiter....

Wenn man das *exakte* Layout der Tabelle kennt, kann man einfach eine
neue Tabelle so anlegen und das frm-File kopieren. Steht AFAIK auch
so im Handbuch.


XL

Re: Datenbank crash

am 08.02.2006 15:17:49 von Dirk Brosowski

Axel Schwenke schrieb:
> Dirk Brosowski wrote:
>
>>Aus irgendeinem Grund scheint MySQL der Meinung zu sein, dass es sich um
>>ISAM-Tabellen handelt, daher die Vermutung, dass die frm-Datei nicht
>>okay ist. Wenn die defekt ist, weiss ich nicht weiter....
>
>
> Wenn man das *exakte* Layout der Tabelle kennt, kann man einfach eine
> neue Tabelle so anlegen und das frm-File kopieren. Steht AFAIK auch
> so im Handbuch.
>
Okay, der Weg war mir schon klar, nur empfehle ich sowas nicht, weil
jemand der kein Backup hat wird nur sehr selten seine Tabellen aus einem
ER-Diagramm erzeugen, sondern die Create's direkt in die DB hacken ...
und ich könnte keine Tabelle auswendig, insb. mit der richtigen
Reihenfolge der Felder ...

Aber wenn sowas sogar im Handbuch empfohlen wird :)

Grüße

Dirk