InnoDB staat eigenlijk maar 768 BYTES toe in de index. Houd er ook rekening mee dat UTF-8-gecodeerde tekenreeksen 3 bytes per teken in beslag nemen, dus je hebt in dat geval slechts 768/3 tekens om mee te spelen in de index.
Een mogelijke oplossing is om de lengte van het veldgebruik in de index te beperken. Omdat u echter ook een unieke index wilt, is dat misschien geen acceptabele oplossing voor u. Gebruik het volgende om de lengte van de gebruikte velden te beperken.
CREATE UNIQUE INDEX `index_matches_on_foo_and_bar_id_and_baz_id` ON `matches` (`foo`(100), `bar_id`(100), `baz_id`(100))