MySQL: Necesita cargar datos en la base de datos, obtener un error de clave duplicada: ¿cómo se pueden ignorar las teclas DUP?
Pregunta
Estoy cargando datos en un DB (MySQL 5.1.42) desde un archivo de volcado usando la línea de comandos MySQL y obtiene un error de clave duplicada.
Este es el formato que uso:
/mnt/temp# mysql -u username -p -h url_of_db_master -d farm2 <db_dump_part_file_a
Hoe ¿Puedo decirle a MySQL que ignore las teclas duplicadas?
Gracias !
Solución
Tendrás que decidir qué quieres que suceda cuando se encuentre un duplicado, porque puedes:
ignoralo (
insert ignore ...
)hacer algo (
insert ... on duplicate key update
)
Ya que mysqldump
Por lo general, arroja cada mesa en un solo insert
Declaración, puede agregar fácilmente esas palabras clave en el archivo de volcado.
Ver esta publicación para una discusión más profunda sobre los pros y los contras de las dos posibilidades.