INDEX command denied to user … for table …

31 08 2011

Eigentlich ist der Update-Prozess beim phpBB Board ganz gut gemacht. Bei meinem heutigen Versuch, ein solches Forum auf den neuesten Stand zu bringen erhielt ich doch ein paar Fehlermeldungen in dieser Form:
Fehler :: INDEX command denied to user 'zwiwwelsupp'@'localhost' for table 'phpbb3_login_attempts'
SQL :: CREATE INDEX att_ip ON phpbb3_login_attempts(attempt_ip, attempt_time)

Zwar heißt es noch, diese Fehler seien nicht kritisch, dies sehe ich allerdings gerade bei höher frequentierten Datenbanken anders. Ein guter Index kann die Zugriffszeiten auf die Tabellen enorm beschleunigen. Deshalb sollte man diesen Fehler nicht einfach so hinnehmen, sondern etwas dagegen tun.

Was ist hier passiert? Ganz einfach, der Hoster verbietet den CREATE INDEX Befehl auf seinen Datenbanken. Warum auch immer, Indexe sind doch eigentlich etwas Gutes. Selbst wenn man diese unsinnig einsetzt, außer seiner Performance kann man damit nichts kaputt machen. Bleibt mir also schleierhaft, weshalb man so etwas sperrt.

Sei es wie es ist, einen Index kann man auch ohne diesen Befehl erzeugen. Dazu nutzt man einfach den ALTER TABLE Befehl, d.h. man bearbeitet die Tabelle derart, dass ein neuer Index hinzugefügt wird. Um den Unterschied zu verdeutlichen:
CREATE INDEX <index_name> ON <tabelle> (<feldname 1>, ..., <feldname n>);
ALTER TABLE <tabelle> ADD INDEX <index_name> (<feldname 1>, ..., <feldname n>);

Für unser obiges Beispiel gäbe das dann also:
ALTER TABLE `phpbb3_login_attempts` ADD INDEX att_ip (`attempt_ip`, `attempt_time`);

Das Ergebnis ist das Selbe:
Index

Advertisements

Aktionen

Information

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s




%d Bloggern gefällt das: