Ok, ik ben er eindelijk achter. Het lijkt erop dat ik de myisam-stopwoorden al had gewist, maar niet de innodb-woorden. Het is een beetje maar moeilijker om te doen dan voor myisam, maar hier zijn de stappen voor iedereen die het misschien nodig heeft:
Voeg in uw /etc/my.cnf (of my.ini in windows) deze regels toe:
Maak een tabel met stopwoorden. Ik heb de mijne gemaakt in een db genaamd settings
en een tabel genaamd innodb-stopwords
. Je kunt niet zomaar innodb_ft_enable_stopword = 0
, je moet een tabel maken en ernaar linken.
Zorg ervoor dat je tabel innodb is en voeg een kolom toe met de naam value
, varchar(?), utf8_general_ci. U kunt het leeg laten of waarden aan de tabel toevoegen.
innodb_ft_enable_stopword = 1
innodb_ft_server_stopword_table = settings/innodb-stopwords
Start uw mysql-server opnieuw op.
Zet uw fulltext-indexen neer en maak ze opnieuw.
Als u de server niet opnieuw wilt opstarten, kunt u de variabelen dynamisch instellen met (update ook het cnf/ini-bestand voor de volgende herstart van de server)
--innodb_ft_enable_stopword=1
--innodb_ft_server_stopword_table=db_name/table_name
Ik zie geen oplossing om de index opnieuw te maken... je kunt het echter in één opdracht doen, zodat de tabel de hele tijd vergrendeld is en je gebruikers geen fouten krijgen:
ALTER TABLE `tablename` DROP INDEX indexname, ADD FULLTEXT(`columnname`);