Seite 1 von 1

Ständiges Tabellen reparieren seit phpBB 3.0

Verfasst: 30.12.2007 11:06
von Remsen
Hallo zusammen!

Seit der Konvertierung von 2.x auf 3.0 muss ich alle 2-3 Tage via myadmin die Tabellen reparieren lassen. Grund sind Fehlermeldungen beim Versuch, Postings zu schreiben oder zu ändern. Auf Dauer ist das natürlich kein Zustand, weil das Forum auch ohne aktive Unterstützung dauerhaft stabil laufen sollte.

Hat jemand eine Idee? Als Mod ist zusätzlich nur "Who was here" von NV eingebaut.

Vorzugsweise werden folgende Tabelle repariert:
REPAIR TABLE `phpbb3_acl_groups` , `phpbb3_acl_options` , `phpbb3_acl_roles` , `phpbb3_acl_roles_data` , `phpbb3_acl_users` , `phpbb3_attachments`

Eine Überprüfung der Tabellen fördert folgende Hinweise zutage:
CHECK TABLE `phpbb3_acl_groups` , `phpbb3_acl_options` , `phpbb3_acl_roles` , `phpbb3_acl_roles_data` , `phpbb3_acl_users` , `phpbb3_attachments` ,
Warnungen bei den Indizes der Tabelle `phpbb3_posts`

Es sollte nicht mehr als ein Index des Typs INDEX für die Spalte `topic_id` gesetzt sein

Es sollte nicht mehr als ein Index des Typs FULLTEXT für die Spalte `post_subject` gesetzt sein

Warnungen bei den Indizes der Tabelle `phpbb3_search_wordmatch`

Die Index-Typen INDEX und UNIQUE sollten nicht gleichzeitig für die Spalte `word_id` gesetzt sein

Warnungen bei den Indizes der Tabelle `phpbb3_topics`

Es sollte nicht mehr als ein Index des Typs INDEX für die Spalte `forum_id` gesetzt sein
Ein direkte Kausalität zwischen Notwendigkeit einer Reperatur und Interaktion im ACP oder von Usern konnte ich bisher nicht beobachten.

Sofern von Relevanz hier die Boardstatistik:
Anzahl von Beiträgen: 14144 Beiträge pro Tag: 8.65
Anzahl von Themen: 484 Themen pro Tag: 0.30
Anzahl von Benutzern: 50 Benutzer pro Tag: 0.03
Anzahl von Dateianhängen: 674 Dateianhänge pro Tag: 0.41
Board eingerichtet: 9th Juli 2003, 08:34 Größe des Avatar-Verzeichnisses: 267.52 KiB
Datenbank-Größe: 15.55 MiB Größe der hochgeladenen Dateien: 26.47 MiB
Datenbank-Server: MySQL(i) 5.0.41 gzip-Komprimierung: Aus
Version des Boards: 3.0.0 Verwaiste Dateianhänge: 0
Macht es Sinn, die Tabellen "optimieren" zu lassen? Ich habe diesen Schritt bisher nicht gewagt, weil ich befürchte, dass er den sensiblen Code durcheinanderbringen könnte.

Danke und bG,
R



Edit:
Eine typische Fehlermeldung (beim Versuch, einen Beitrag zu löschen) sieht beispielsweise so aus:
Allgemeiner Fehler

SQL ERROR [ mysqli ]

Incorrect key file for table './.../phpbb3_posts.MYI'; try to repair it [126]

SQL

DELETE FROM phpbb3_posts WHERE post_id = '14453'

BACKTRACE


FILE: includes/db/mysqli.php
LINE: 143
CALL: dbal->sql_error()

FILE: includes/functions_admin.php
LINE: 698
CALL: dbal_mysqli->sql_query()

FILE: includes/functions_posting.php
LINE: 1360
CALL: delete_posts()

FILE: posting.php
LINE: 1440
CALL: delete_post()

FILE: posting.php
LINE: 279
CALL: handle_post_delete()

Verfasst: 30.12.2007 12:27
von PhilippK
Was für Fehlermeldungen kommen denn genau? Die Warnungen sind eher Schönheitsfehler an der DB-Struktur, aber völlig unschädlich.

Gruß, Philipp

Re: Ständiges Tabellen reparieren seit phpBB 3.0

Verfasst: 30.12.2007 12:28
von nickvergessen
Remsen hat geschrieben:Edit:
Eine typische Fehlermeldung (beim Versuch, einen Beitrag zu löschen) sieht beispielsweise so aus:
Allgemeiner Fehler

SQL ERROR [ mysqli ]

Incorrect key file for table './.../phpbb3_posts.MYI'; try to repair it [126]

SQL

DELETE FROM phpbb3_posts WHERE post_id = '14453'

BACKTRACE


FILE: includes/db/mysqli.php
LINE: 143
CALL: dbal->sql_error()

FILE: includes/functions_admin.php
LINE: 698
CALL: dbal_mysqli->sql_query()

FILE: includes/functions_posting.php
LINE: 1360
CALL: delete_posts()

FILE: posting.php
LINE: 1440
CALL: delete_post()

FILE: posting.php
LINE: 279
CALL: handle_post_delete()
Siehe sein Edit @PhilippK

Verfasst: 30.12.2007 12:33
von PhilippK
Läuft auf dem MySQL-Server irgendwas mit einer Tabellenreplikation?
Siehe auch: http://forums.mysql.com/read.php?21,182 ... #msg-18281

Gruß, Philipp

Verfasst: 30.12.2007 12:54
von Remsen
Soweit ich es überblicken kann, leider nicht.

Die Fehlermeldungen haben zur Folge, dass man in die entsprechenden Threads nichts mehr posten oder bestehende Beiträge nicht mehr editieren kann.

Da phpBB nahezu unverändert ist und ich mit meiner Datenbank bzw. dem Provider noch nie Probleme hatte, bin ich mit meinem beschränkten phpBB Latein am Ende.

Danke schonmal für Eure Unterstützung,

bG,
R

Verfasst: 30.12.2007 13:28
von PhilippK
Ich würde mal den Provider fragen, ob er etwas feststellen kann. Das Problem liegt recht sicher bei MySQL bzw. an der Verbindung dahin.

Gruß, Philipp

Verfasst: 30.12.2007 16:24
von Remsen
PhilippK hat geschrieben:Ich würde mal den Provider fragen, ob er etwas feststellen kann. Das Problem liegt recht sicher bei MySQL bzw. an der Verbindung dahin.
Danke auch für den obigen Link. Es scheint eine Kausalität zwischen dem Löschen von Beiträgen und dem Erscheinen des Fehlers zu geben.

Trotz der neuen Version MySQL(i) 5.0.41 scheine ich nicht der Einzige zu sein, der mit dem beschriebenen Phönomen zu kämpfen hat. Eine Lösung scheint bisher nicht gefunden zu sein.

Merkwürdig ist in meinem Fall jedoch, dass mein altes phpBB2 problemlos lief und läuft, der Fehler mithin nur bei der Gold Version auftritt.

bG,R

Verfasst: 30.12.2007 20:17
von Remsen
PhilippK hat geschrieben:Läuft auf dem MySQL-Server irgendwas mit einer Tabellenreplikation?
Siehe auch: http://forums.mysql.com/read.php?21,182 ... #msg-18281
Ich habe nochmal nachgesehen, Replikation ist aus. Allerdings habe ich ein paar "rote" Werte, mit denen ich als Datenbanklaie nur bedingt etwas anfangen kann. Vielleicht steckt hier der Teufel im Detail?

[ externes Bild ]

beste Grüße,
Remsen