MySQL – Primary Key, Unique, Index

Not really a formal definition, but here it is:

Primary Key – Key to the specific record, tells you what uniquely identifies that record
Index – one of more fields indexed to improve access time
Unique Index – type of index, means that a field or group of field is unique, so no other record can have the same one

Note that “primary” is called PRIMARY KEY not INDEX.
KEY is something on the logical level, describes your table and database design (i.e. enforces referential integrity …)
INDEX is something on the physical level, helps improve access time for table operations.
Behind every PK there is (usually) unique index created (automatically).