InnoDB वास्तव में इंडेक्स में केवल 768 BYTES की अनुमति देता है। साथ ही, ध्यान दें कि UTF-8 एन्कोडेड स्ट्रिंग्स प्रति वर्ण 3 बाइट्स लेती हैं, इसलिए आपके पास उस स्थिति में इंडेक्स में खेलने के लिए केवल 768/3 वर्ण हैं।
एक संभावित समाधान सूचकांक में क्षेत्र के उपयोग की लंबाई को सीमित करना है। हालाँकि, चूंकि आप भी एक अद्वितीय अनुक्रमणिका चाहते हैं, यह आपके लिए स्वीकार्य समाधान नहीं हो सकता है। उपयोग किए गए फ़ील्ड की लंबाई सीमित करने के लिए निम्न का उपयोग करें।
CREATE UNIQUE INDEX `index_matches_on_foo_and_bar_id_and_baz_id` ON `matches` (`foo`(100), `bar_id`(100), `baz_id`(100))