jun
4
2013

Error#1005 – Can’t create table (errno: 121) en MySQL

Vengo usando MySQL desde hace mucho tiempo, normalmente trabajo en base de datos local y cuando todo el desarrollo está listo los subo al servidor final. Esto implica expotar la base de datos en local e importarla en el servidor de producción.

Mientras desarrollo, y a pesar de intentar hacer un buen diseño de la Base de Datos desde el inicio, es inevitable tener que tocarla en el proceso, añadir alguna tabla, algún campo, alguna relación nueva entre tablas…

Hoy me he encontrado que tras hacer la exportación de la base de datos al ir a hacer la importación en el nuevo servidor me ha surgido este error:


"#1005 - Can't create table 'XXX.xxxx' (errno: 121)". .

Pensando un poco el error #1005 se refiere a errores con foreign keys asi que me puse a revisar todas las foreign keys y parece que todo estaba bien.
Después de darle vueltas al asunto durante un rato me di cuenta de que había olvidado darle un nombre único a todas las foreign key de la Base de Datos, y es que si estas usando el InnoDB debes asegurarte que los nombres de las foreign keys sean unicos en TODA la base de datos no solo en la tabla en particular.

Acerca del autor:

Deja tu comentario

Publicidad