Categorías: Tutoriales

Deshabilitar comprobación de restricciones en MySQL al cargar un dump

Si usáis InnoDB en vuestras bases de datos MySQL tendréis la suerte de disfrutar de una base de datos moderna ACID, que tiene entre otras cosas, claves foráneas y podéis hacer que haya restricciones sobre ellas, las famosas constraints.

Un problema de tener restricciones en una base de datos, es que cuando tienes que recuperarla de urgencia con una copia, que solemos realizar con un dump, existen problemas porque el orden en el que el dump crea la base de datos NO respeta las estructuras de estas restricciones.

¿Qué obtenemos? Mensajes de este tipo en MySQL:

Can't create table './xxxxxxxx/mitabla.frm' (errno: 121)

¿Cómo resolverlo? Añadiendo al comienzo y al final del dump dos líneas:

SET FOREIGN_KEY_CHECKS = 0;
/* contenido del dump */SET FOREIGN_KEY_CHEKS = 1;

Con eso nos olvidaremos de este problema.

F. Javier Carazo Gil

Cofundador de CODECTION, empresa especializada en WordPress, autor de un libro sobre WordPress (el primero en español) y multitud de artículos (en medios físicos y virtuales) sobre el tema. Participa en la comunidad WordPress de forma activa siendo parte del equipo organizador de la WordPress Meetup de Córdoba, dando charlas en diferentes WordCamp y siendo autor y coautor de multitud de plugins libres y premium para WordPress de gran éxito.

Ver comentarios

Compartir
Publicado por
F. Javier Carazo Gil

Entradas recientes

DeepSeek

2 días hace

Contacto

2 semanas hace

Smart-tv mute

2 semanas hace

STEAM OS

3 semanas hace

2025

1 mes hace

El podcast de Linux Hispano – #072 – El hardware libre debe consolidarse como el software libre

https://www.youtube.com/embed/z-xGk9c_eOw Guionista y locutor: Manuel Ignacio López Quintero.Fecha de publicación: 31 de diciembre de 2024.

1 mes hace