MySQL - Problema Backup MySql

 
Vista:

Problema Backup MySql

Publicado por Ruicardo (1 intervención) el 06/05/2010 12:37:38
Buenas a todos, mi problema es el siguiente:

Tengo una base de datos bastante grande alojada en un servidor propio, hago un backup de la estructura y de los datos de dicha bbdd hasta aqui todo perfecto. El problema esque con el fichero generado por el backup(mibbdd.sql) intento reproducirlo en local y me genera el siguiente error:

Error Code: 1418 - This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

Si pruebo hacer el backup solo de la estructura me funciona perfecto y se me despliega bien en local.

El gestor de bbdd que uso es el SQLYog

Muchas Gracias a todos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema Backup MySql

Publicado por Victor (1 intervención) el 06/05/2010 14:57:16
a mi me pasa lo mismo y eso me doy cuenta que pasa con las tablas que tienen campo BLOC y tienen fotos guardadas. Le omito estas tablas para recuperar y sin problema, pero no puedo recuperar estas tablas que por cierto son un poco grande. si alguien nos puede orientar un poco le agradeceria
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema Backup MySql

Publicado por Gonzalo GC (339 intervenciones) el 06/05/2010 15:45:20
El problema se produce cuando se ha creado una stored function en el servidor sin indicar DETERMINISTIC, NO SQL, o READS SQL DATA en su prototipo, cosa que en modo dinámico acepta, y luego de realizar un backup, al intentar restaurarlo el parser no encuentra estas cláusulas.
Como las cláusulas DETERMINISTIC, NO SQL, o READS SQL DATA son mandatorias para el estandar de MySQL, toma su falta como error de sintaxis AL MOMENTO DE RESTAURAR, AUNQUE NO LO HAYA HECHO PREVIAMENTE.
La solución es sencilla:
Edita las funciones en cuestión en modo consola en la base del servidor y agregale antes del BEGIN DETERMINISTIC, si no hace operaciones DDL o DML, o READS SQL DATA si se usa una sentencia DML en ella. Luego haz el backup, restauralo y veremos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar