Hoy en día, MySQL es una de las soluciones más populares entre los sistemas de administración de bases de datos de tamaño pequeño y mediano. Una de las ventajas de MySQL es la capacidad de trabajar con tablas de diferentes tipos. Uno de ellos es MyISAM. Estas tablas son excelentes para almacenar datos solicitados con frecuencia, pero si fallan durante el proceso de modificación, pueden dañarse fácilmente. Por lo tanto, a menudo hay casos en los que necesita restaurar una tabla del tipo MyISAM.
Necesario
- - credenciales raíz en la máquina de destino;
- - paquete instalado de utilidades de administración del servidor MySQL.
Instrucciones
Paso 1
Inicie una sesión con las credenciales del usuario raíz en una máquina con un servidor MySQL en funcionamiento que ejecute una base de datos que se cree que tiene tablas dañadas. Si puede trabajar directamente con la computadora de destino, inicie sesión en una consola de texto o ejecute un emulador de terminal como root. Si tiene acceso SSH remoto, utilice un programa cliente adecuado para realizar la conexión.
Paso 2
Detenga el servidor de base de datos MySQL en la máquina de destino. Ejecute el comando service mysqld stop. Espere a que se complete el proceso de apagado (esto se indicará mediante un mensaje de diagnóstico).
Paso 3
Cree una copia de seguridad de los archivos de la tabla de la base de datos, que se utilizará para trabajos posteriores. En este caso, es conveniente utilizar el administrador de archivos. Navegue hasta la carpeta que contiene los archivos de la tabla. Tiene un nombre idéntico al nombre de la base de datos y está ubicado en el directorio db, que se encuentra en el directorio raíz del servidor (direccionado por la variable chroot del archivo de configuración my.cnf). Copie todos los archivos con extensiones MYD y MYI de la carpeta actual a algún directorio temporal.
Paso 4
Compruebe si hay daños en una o más tablas de la base de datos. En el directorio actual, ejecute el comando myisamchk con la opción -c (o sin opciones) para un escaneo normal. Utilice la opción -m para realizar pruebas minuciosas y la opción -e para realizar pruebas más minuciosas. Como último parámetro, especifique el nombre o máscara de los nombres de los archivos a procesar. Por ejemplo: myisamchk -c test_table. MYImyisamchk *. MYI
Paso 5
Recupera la mesa o mesas donde se encontró el daño. Ejecute el comando myisamchk con la opción -r para una recuperación normal o la opción -o para una recuperación suave. Como último parámetro, como en el paso anterior, pase el nombre o la máscara de nombre de las tablas de destino. Por ejemplo: myisamchk -o test_table. MYI
Paso 6
Inicie el servidor MySQL. Ejecute el comando service mysqld start.
Paso 7
Termina tu sesión. Ingrese el comando exit y presione Enter.