MySQL raises error 1191 when a MATCH ... AGAINST clause or ALTER statement references columns that lack a compatible FULLTEXT index.
MySQL Error 1191: ER_FT_MATCHING_KEY_NOT_FOUND means the referenced columns are not covered by a FULLTEXT index. Create or modify a FULLTEXT index on those columns, then rerun the query to resolve the issue.
Can't find FULLTEXT index matching the column list
MySQL returns error 1191 with the message "Can't find FULLTEXT index matching the column list" when a FULLTEXT search or alteration references columns not covered by any FULLTEXT index.
The server aborts the statement because MATCH ... AGAINST or the ALTER action cannot proceed without an appropriate FULLTEXT index. The failure stops query execution until the index is fixed.
The error appears in SELECT queries using MATCH ... AGAINST, in ALTER TABLE ...
DROP INDEX, and during CREATE TABLE ... LIKE when the source table has unmatched FULLTEXT keys.
MySQL versions 5.6 and later enforce this check strictly for InnoDB and MyISAM engines, so any mismatch triggers HY000 (SQLSTATE) 1191.
Most cases involve running a text search on columns that were never indexed with FULLTEXT.
Other scenarios include columns added after the index was created, dropped indexes that were not recreated, or cross-table queries after renaming columns.
Engine limitations also matter: only CHAR, VARCHAR, and TEXT types are allowed. Using BLOB, JSON, or incorrect collation triggers the same error indirectly.
Create a matching FULLTEXT index on the exact column list used in MATCH ... AGAINST.
If an index exists but lacks a column, drop and recreate it with the full list.
Verify the storage engine supports FULLTEXT for the chosen MySQL version. Move tables to InnoDB or MyISAM if required.
A developer adds a new "description" column but forgets to update the FULLTEXT index. The fix is to ALTER TABLE ADD FULLTEXT(description).
During migration, a script drops indexes to load data faster and forgets to rebuild them.
Recreate the FULLTEXT indexes after loading.
Automate index creation in migrations so schema and indexes stay in sync. Always include FULLTEXT columns in version control reviews.
Galaxy users can embed index-checking SQL snippets into pre-merge hooks, leveraging the IDE’s AI copilot to flag missing FULLTEXT indexes before deployment.
Error 1821 (HY000) – "Invalid row format" occurs when FULLTEXT indexes are created on tables with ROW_FORMAT=COMPRESSED in older MySQL versions.
Change the row format or upgrade.
Error 1214 (ER_CANT_ADD_FOREIGN) appears when altering tables with FULLTEXT indexes and foreign keys simultaneously. Split the ALTER operations to resolve.
.
Yes. The column list in MATCH must exactly match one FULLTEXT index for the query to run.
You can include multiple columns in a single FULLTEXT index, but MATCH must reference them as a group.
In MySQL 5.6+, both InnoDB and MyISAM support FULLTEXT. Older versions limit support to MyISAM.
Galaxy’s AI copilot suggests CREATE FULLTEXT statements while you write MATCH queries and warns when indexes are missing.