Foreign key in MySQL
foreign key would have a different name from the primary key it is referring to, but necessarily , their data type and other attributes should be the same.
for example , if one is INT(10) unsigned the other should be defined the same.  

but sometimes it is a good practice to name them similarly in complex queries. for example when you want to JOIN the relating tables, you can use the syntax :  

userGroupType INNER JOIN userGroup USING (GroupType_id)


instead of :

userGroupType INNER JOIN userGroup ON userGroupType.GroupType_id = userGroup.GroupType_id