parallel how extended mysql mysql-error-126

how - parallel repair mysql



¿Cómo solucionas un error de MySQL "Archivo de clave incorrecto" cuando no puedes reparar la tabla? (9)

Aplique el conjunto de caracteres y la recopilación adecuados a la base de datos, la tabla y las columnas / campos.

Crea una base de datos y una estructura de tabla usando consultas de SQL de un servidor a otro. crea la estructura de la base de datos de la siguiente manera:

  1. base de datos con el conjunto de caracteres de "utf8", compilación de "utf8_general_ci"
  2. tablas con el conjunto de caracteres de "utf8" y compilación de "utf8_bin".
  3. las columnas / campos de la tabla tienen el conjunto de caracteres "utf8" y la recopilación de "utf8_bin".

Cambio la clasificación de la tabla y la columna a utf8_general_ci , y resuelve el error.

Estoy intentando ejecutar una consulta bastante grande que se supone que se ejecuta todas las noches para completar una tabla. Me Incorrect key file for table ''/var/tmp/#sql_201e_0.MYI''; try to repair it un error que dice Incorrect key file for table ''/var/tmp/#sql_201e_0.MYI''; try to repair it Incorrect key file for table ''/var/tmp/#sql_201e_0.MYI''; try to repair it pero el motor de almacenamiento que estoy usando (sea cual sea el valor predeterminado, supongo?) no admite la reparación de tablas.

¿Cómo soluciono esto para poder ejecutar la consulta?


Debe cambiar la ubicación de la carpeta temporal de MySQL que es ''/ tmp'' en la mayoría de los casos a una ubicación con un espacio de disco más grande. Cambiarlo en el archivo de configuración de MySQL.

Básicamente, su servidor se está quedando sin espacio en el disco donde se encuentra / tmp.


El motor de almacenamiento (MyISAM) NO es compatible con la tabla de reparación. Deberías poder repararlo.

Si la reparación falla, es una señal de que la tabla está muy dañada, no tiene más remedio que restaurarla desde las copias de seguridad.

Si tiene otros sistemas (p. Ej., No producción con las mismas versiones de software y esquema) con una tabla idéntica, entonces podría arreglarlo con algunos hackers (copiando los archivos MYI de un frm, seguido de una reparación).

En esencia, el truco es evitar las tablas rotas en primer lugar. Esto significa que siempre debe apagar su base de datos de forma limpia, no tener que bloquearla y nunca tener problemas de hardware o de alimentación. En la práctica, esto no es muy probable, por lo que si la durabilidad es importante, puede considerar un motor de almacenamiento más seguro contra choques.


En mi caso, hubo un problema de espacio en el disco. Borre algunos archivos war no deseados de mi servidor y funcionó después de eso.


La simple "REPARACIÓN de la tabla" de PHPMYADMIN resolvió este problema para mí.

  1. ir a phpmyadmin
  2. mesa problemática abierta
  3. Vaya a la pestaña Operaciones (en mi versión de PMA)
  4. En la parte inferior encontrará el enlace "Reparar tabla".

Necesitará ejecutar este comando desde el prompt de MySQL:

REPAIR TABLE tbl_name USE_FRM;

De la documentación de MySQL sobre el comando Reparar :

La opción USE_FRM está disponible para su uso si falta el archivo de índice .MYI o si su encabezado está dañado . Esta opción le dice a MySQL que no confíe en la información del encabezado del archivo .MYI y que vuelva a crearla con la información del archivo .frm. Este tipo de reparación no se puede hacer con myisamchk .


Su consulta está generando un conjunto de resultados tan grande que necesita construir una tabla temporal para mantener algunos de los resultados o algún producto intermedio utilizado para generar el resultado.

La tabla temporal se genera en / var / tmp. Esta tabla temporal parecería haber sido dañada. Quizás el dispositivo en el que se estaba construyendo la tabla temporal se quedó sin espacio. Sin embargo, generalmente esto normalmente resultaría en un error "fuera de espacio". Tal vez algo más que se está ejecutando en su máquina ha superado la tabla temporal.

Intente volver a trabajar su consulta para usar menos espacio, o intente reconfigurar su base de datos para que se use una partición más grande o más segura para las tablas temporales.

Manual de MySQL - B.5.4.4. Donde MySQL almacena archivos temporales


TABLA DE REPARACIÓN tbl_name USE_FRM;

El comando solo se ejecuta cuando el tipo MySQL ''Storage Engine'' debe ser ''MyISAM''

Espero que esto ayude


este problema se debe a la baja disponibilidad de espacio de almacenamiento de una unidad particular (c: / o d: / etc.,), libera algo de memoria y luego funciona.

Gracias Saikumar.P