3100
MySQLERRORNotableInnoDBHIGH confidence

InnoDB full-text search limit exceeded

Production Risk

Low — DDL fails; existing indexes are unaffected.

What this means

The operation would exceed an InnoDB full-text search limit, such as the maximum number of full-text indexes per table or the maximum total full-text index count.

Why it happens
  1. 1Attempting to create a full-text index on a table that already has 6 full-text indexes (the maximum for InnoDB).
  2. 2Exceeding innodb_ft_max_token_size or innodb_ft_min_token_size thresholds.
How to reproduce
trigger — this will error
trigger — this will error
ALTER TABLE t ADD FULLTEXT INDEX idx7 (col7);  -- when 6 already exist

expected output

ERROR 3100 (HY000): InnoDB presently supports one FULLTEXT index creation at a time.

Fix 1

Reduce the number of full-text indexes on the table

Reduce the number of full-text indexes on the table
ALTER TABLE t DROP INDEX existing_fulltext_idx;

Why this works

Frees a slot for the new full-text index.

Fix 2

Combine columns into a single full-text index

Combine columns into a single full-text index
ALTER TABLE t ADD FULLTEXT INDEX combined_ft (col1, col2, col3);

Why this works

Multi-column full-text indexes count as one index.

What not to do

Sources
Official documentation ↗

MySQL 8.0 — 3100 ER_INNODB_FT_LIMIT2

Content generated with AI assistance and reviewed for accuracy. Found an error? hello@errcodes.dev

← All MySQL errors