Hola,
que version tienes de mysql?, en las recientes 4.x , el uso de foreing keys ya viene por defecto, pero en antiguas 3.23.x (no recuerdo a partir de cual exactamente) debes ejecutar el servidor especifico para las foreign keys.
Para crear una foreign key, debes crear primero un indice sobre el campo que va a ser la foreign key, asi que tiene que funcionarte forzosamente, quizas estas haciendo algo mal por otro lado, investiga bien.
yo tango mysql 4.0.17 y el uso de foreign keys me va perfecto, tal y como te he contado.
un saludo.