Есть ли какая-то конкретная причина, по которой вам нужно / хотите использовать многостолбцовые ключи вместо (я полагаю) уже созданного одностолбцового ключа?
Одна из проблем с Natural Keys связана с каскадным обновлением значения ключа для всех внешних ключей. Суррогатный ключ, такой как столбец автоинкремента, избегает этого.
С точки зрения производительности, в зависимости от количества строк, типов данных столбцов, механизма хранения и объема оперативной памяти, выделенной для MySQL, ключи из нескольких столбцов могут влиять на производительность из-за огромного размера индекс.
По моему опыту, с точки зрения разработки и обслуживания почти всегда проще использовать суррогатный ключ в качестве PK, а затем создавать индексы, которые покрывают ваши запросы по естественным ключам. Однако единственный способ определить истинное влияние на производительность вашего приложения - сравнить его с реалистичной реалистичной нагрузкой и набором данных.
HTH -
Chris