
developr
Teammitglied
- Beiträge
- 336
- Punkte Reaktionen
- 0
Nachdem man die Variablen ft_min_word_len, ft_max_word_len oder ft_stopword_file geändert hat, müssen laut der MySQL-Dokumentation die Volltext-Indizes neu erstellt werden. Jedoch steht nirgends geschrieben, wie man ohne großen Aufwand alle Indizes neu erstellt.
Man könnte über phpMyAdmin alle Tabellen markieren und im Auswahlmenü "reparieren" auswählen.

Möchte man nun aber nicht alle Tabellen reparieren, sondern tatsächlich nur die Tabellen, welche auch einen Volltext-Indiz besitzen, dann wechselt in die Datenbank "information_schema" und führt folgenden SQL-Query aus.
Ihr bekommt dann eine Liste, welche ihr nur noch über die Shell oder phpMyAdmin einfügen müsst.
Man könnte über phpMyAdmin alle Tabellen markieren und im Auswahlmenü "reparieren" auswählen.

Möchte man nun aber nicht alle Tabellen reparieren, sondern tatsächlich nur die Tabellen, welche auch einen Volltext-Indiz besitzen, dann wechselt in die Datenbank "information_schema" und führt folgenden SQL-Query aus.
Code:
SELECT DISTINCT CONCAT("REPAIR TABLE `", TABLE_SCHEMA, "`.`",
TABLE_NAME, "` QUICK;") FROM information_schema.STATISTICS
WHERE index_type = 'FULLTEXT';
Ihr bekommt dann eine Liste, welche ihr nur noch über die Shell oder phpMyAdmin einfügen müsst.
Code:
REPAIR TABLE `dbname`.`blog_text` QUICK;
REPAIR TABLE `dbname`.`groupmessage` QUICK;
REPAIR TABLE `dbname`.`groupmessage_bak` QUICK;
REPAIR TABLE `dbname`.`pt_issue` QUICK;
REPAIR TABLE `dbname`.`pt_issuenote` QUICK;
REPAIR TABLE `dbname`.`socialgroup` QUICK;