MySQL error {SOLVED}

Get help with installation and running phpwcms here. Please do not post bug reports or feature requests here.
Post Reply
hal
Posts: 66
Joined: Mon 9. Feb 2004, 22:07

MySQL error {SOLVED}

Post by hal »

I'm not sure if this topic has to go here - admin/ Mod please move as necessary.

As I couldn't find aything about this issue here in the forums I post the problem and the solution as it could be helpful eventually.

I have version 1.2.6 - 14.12.2005 (but this does not matter i guess).

When I updated a template I got the following MySQL error message:

Code: Select all

1016 - Can't open file 'TABLE_NAME.MYI' (errno: 145)
When trying to look at this table in phpmyadmin the same errormessage appeared and the table was not displayed. All other tables were working fine. So I did a web search and found the following article:
Folgende Fehlermeldung erscheint, wenn eine Tabelle der Datenbank -vermutlich aufgrund eines Absturzes- fehlerhaft ist, und auf sie weder zugegriffen noch von ihr gelesen werden kann:


1016 - Can't open file 'TABELLENNAME.MYI' (errno: 145)

Die Fehlermeldung wird so lange auftreten, bis die entsprechende Tabelle der Datenbank repariert wurde.

Lösungsvorschlag

Mit folgende Methoden ist es möglich, fehlerhafte Tabellen zu reparieren. Die Auswahl der Methode hängt davon ab, ob der Datenbankserver noch läuft (Methode 1) oder nicht (Methode 2).

Methode 1: repair table SQL-Befehl
Methode 2: myisamchk-Befehl



Die Zeichenkette TABELLENNAME muß in den folgenden Befehlen durch den Namen der Tabelle ersetzt werden, der in der Fehlermeldung angegeben wird.


Methode 1: repair table SQL-Befehl

Führen Sie den folgenden SQL-Befehl aus, wenn der Datenbankserver noch läuft:


repair table TABELLENNAME;

Dies können sie z.B. in phpMyAdmin im Menüpunkt SQL oder in der Kommandozeile des Servers mit dem mysql-Tool durchführen.

Methode 2: myisamchk-Befehl

Der myisamchk Befehl ist Bestandteil einer Standard-MySQL-Installation und kann ausgeführt werden, wenn der MySQL-Server nicht mehr läuft. Loggen Sie sich dazu (z.B. per SSH) auf ihren Server ein, und führen Sie anschließend in der Kommandozeile folgende Befehl aus:

myisamchk [OPTIONEN] /pfad/zum/datenbank/verzeichnis/TABELLENNAME.MYI

Die für Sie passenden Optionen entnehmen Sie der Online-Dokumentation von myisamchk oder dem folgenden Befehl:
myisamchk --help

Beim Autor dieses Artikels lautet der Pfad des Datenbankverzeichnisses /var/lib/mysql. Die myisamchk-Methode dürfte allerdings nur dann funktionieren, wenn Sie root-Zugriff auf den Server haben. Wenn dem nicht so ist, sollten Sie ihren Provider kontaktieren.
This is from the OS-Commerce Knowledge base and was very helpful for me. Especially because the phpmyadmin section "Operations" where the function "repair table" is available did not work for this table in my case. So the first solution with the MySQL code line that also can be executed without selecting the table itself was the solution in my case.

To have a look at the original go here: http://de.oscommerce.info/kb/MS2/Typische_Probleme/128

(I felt it was only fair to name the source where I got it from)

I hope it is ok to post that here as some other people may encounter the same problem and might appreciate to find a solution here in the forums. Otherwise Admin/ Mod may just delete this post without prior notice)
antal
Posts: 9
Joined: Fri 5. Nov 2004, 22:45

Post by antal »

I had the some problem on 2 databases in my phpwcms_cache. I solved it using 'repair table phpwcms_cache' via SSH.

I can't exactly see where the problem is coming from because different people update the websites. Maybe it has to do with resizing, uploading new pictures, changing templates....????

If anybody has a good idea on what the problem may be, please feel free to put your thoughts in this forum!?
Post Reply