todas - reparar tabla mysql phpmyadmin
No se puede cargar desde mysql.proc. La tabla está probablemente corrupta (2)
Sé que parece duplicado, pero las soluciones que encontré no funcionan para mí. Desinstalé mysql 5.1 e instalé 5.6 y me gustaría importar antes el archivo de exportación de SQL. Pero hay alguna función que hace este error en ese archivo de exportación. Encontré y ejecuté el comando:
../bin mysql mysql_upgrade -uroot -p --force pero si entiendo, solo funciona cuando se actualiza, no con la instalación. ¿Hay alguna solución para mí?
¡Gracias!
EDITAR: He eliminado la definición de la función del archivo de importación y la importación está lista. Pero si quiero redefinir esa función manualmente, me muestra el mismo error "no se puede cargar desde mysql.proc". La función está aquí:
DELIMITER $$
CREATE FUNCTION `randStr250`(length int) RETURNS varchar(250) CHARSET utf8
begin
declare s varchar(250);
declare i tinyint;
set s="";
if (length<1 or length>6) then
set s="Parameter should be in range 1-6. Your value was out of this range.";
else
set i=0;
while i<length do
set s=concat(s,sha1(now()));
set i=i+1;
end while;
end if;
return s;
end $$
DELIMITER ;
La mayoría de las personas que tienen este problema recomiendan actualizar MySQL. Si estás en una configuración, como yo, en la que esto sucede cuando intentas configurar un nodo ESCLAVO para que se replique desde un nodo MAESTRO, no querrás meterte con las versiones.
Quiero decir, en mi caso tenía un nodo MASTER de Windows y estaba configurando un nodo ESCLAVO de Linux (así que, haciendo la danza mysqldump primero). Dado que actualizar MySQL es un poco más complicado en Linux (o mejor dicho, en realidad es mejor no hacerlo, para disfrutar de la estabilidad de los paquetes de Linux que, por ejemplo, provienen de su distribución de LTS), tal vez sea una buena idea asegurarse que la versión de MySQL que tiene en su sistema operativo Windows está ejecutando la misma versión que su versión de MySQL en su sistema operativo Linux.
Una vez que me aseguré de que ambas versiones fueran iguales, mysqldump y restore funcionaron, y pude configurar un nodo ESCLAVO correctamente sin recibir el terrible error Cannot load from mysql.proc. The table is probably corrupted.
Cannot load from mysql.proc. The table is probably corrupted.
.
Espero que esto ayude.
Se produjo un problema similar después de restaurar un volcado de base de datos de mysql-5.5.29 a mariadb-5.5.41. mysql_upgrade solucionó el problema
$ mysql_upgrade -u root -pxxx
Según el manual de mysql ,
Debe ejecutar mysql_upgrade cada vez que actualice MySQL.