Pro vaše pole tedy id (PK), userId (FK) a skillId (FK),mysql automaticky vytvoří index na (id) (unikátní) a index na (userId) (neunikátní) a index na (skillId) (nejedinečné).
Stále potřebujete další jedinečný index na (userId, skillId) .
To by mohlo nahradit nejedinečný index na (userId) protože optimalizátor může použít (userId, skillId) index, kdykoli potřebuje vyhledat podle userId . Vytváření a odstraňování indexů, když je index používán cizím klíčem v mysql, může být těžkopádné, takže možná budete chtít přidat složený jedinečný index.