Recuperación de una base de datos MySQL de un disco formateado

En este tutorial Carlos García nos enseñará como intentar recuperar una base de datos MySQL desde un disco duro que ha sido formateado o tiene problemas

Recuperación de una base de datos MySQL de un disco formateado

En este tutorial vamos a ver que podemos hacer para intentar recuperar una base de datos MySQL de la cuál no se tiene copia desde un disco duro que ha sido formateado o está corrupto.

Introducción

Como todos sabemos, una de los recursos más importantes que tiene una empresa son los datos con los que trabaja: clientes, pedidos, etc.

Normalmente una gran parte de esta información es almacenada en base de datos y es accedida por los trabajadores de la empresa a través de aplicaciones.

Debido a la importancia de esta información, es necesario tener políticas de administración, así como de copias de seguridad para poder restaurar la
información en caso de ser necesario.

Por desgracia, normalmente por desconocimiento o exceso de confianza, muchas pequeñas y medianas empresas carecen de estas políticas.

¿Qué información tenemos que recuperar del disco duro pare recuperar la base de datos MySQL?

Para recuperar las bases de datos necesitamos:

  1. Saber dónde y cómo guarda el servidor MySQL la información de nuestras bases de datos.
  2. Un programa de recuperación de datos (aunque el HDD haya sido formateado es posible recuperar la información), por ejemplo:
    Text
    Easy Recovery

    .

¿Dónde y cómo guarda el servidor MySQL la información de nuestras bases de datos?

Por defecto, el servidor MySQL crea un directorio para cada base de datos dentro del directorio

Text
%MYSQL_PATH%/data

. Por ejemplo, los datos de una
BD de nombre

Text
autentia_tntconcept

se almacenarían en

Text
%MYSQL_PATH%/data/autentia_tntconcept

Nota:

Text
%MYSQL_PATH%

es la ruta donde está instalado el servidor MySQL.

MySQL trata principalmente con los siguientes tipos de archivos:

  1. Archivos con extensión
    Text
    .frm

    : Guardan la definición de una tabla u objeto de la base de datos.

  2. Archivos con extensión
    Text
    .myd

    : Guardan los datos de una tabla de tipo MyISAM.

  3. Archivos con extensión
    Text
    .myi

    : Guardan los datos de un índice de una tabla de tipo MyISAM.

Como sabemos, la mayoría de las tablas suelen ser de tipo InnoDB. Por defecto, TODOS los datos de TODAS las tablas de tipo InnoDB de TODAS las bd están en los archivos

Text
%MYSQL_PATH%/data/ibdata{n}

siendo n=1, 2, 3

¿Cómo reconstruyo la base de datos?

Una vez recuperados los archivos expuestos en el punto anterior, simplemente debemos copiarlos al ordenador donde deseemos restaurarlos manteniendo la misma estructura. Para ello debemos parar el servidor MySQL antes de la copia e iniciarlo después.

Si al iniciar el servidor se produce algún error, borre los archivos

Text
%MYSQL_PATH%/data/ib_logfile{n}

e inténtelo de nuevo.

Nota importante: Si el archivo

Text
%MYSQL_PATH%/data/ibdata{n}

tiene datos de muchas BD, sólo serán visibles las BD en donde también tengamos la definición, es decir, el directorio de la base de dados con los archivos

Text
.frm

.

Bueno, eso es todo, un saludo.
Carlos García. Creador de MobileTest.

Comentarios

Un comentario

  1. Hola! Recientemente me he encontrado con este problema en el caso de un cliente y tras ver este excelente tutorial, he visto que hay algunos casos en los que se puede haber perdido el fichero Ibdata1 y en los que la recuperación resulta algo más complicada.

    He destinado un rato a crear una entrada en mi blog para intentar cubrir y dar solución al mayor número de casos posibles, espero que a alguien le resulte de ayuda.

    https://www.proyektia.com/recuperar-base-de-datos-mysql-tras-borrar-ibdata1/

    Un saludo!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

He leído y acepto la política de privacidad

Información básica acerca de la protección de datos

  • Responsable: IZERTIS S.A.
  • Finalidad: Envío información de carácter administrativa, técnica, organizativa y/o comercial sobre los productos y servicios sobre los que se nos consulta.
  • Legitimación: Consentimiento del interesado
  • Destinatarios: Otras empresas del Grupo IZERTIS. Encargados del tratamiento.
  • Derechos: Acceso, rectificación, supresión, cancelación, limitación y portabilidad de los datos.
  • Más información: Puedes ampliar información acerca de la protección de datos en el siguiente enlace:política de privacidad

Técnico especialista en informática de empresa (CEU). Ingeniero Técnico en Informática de Sistemas (UPM) Creador de MobileTest, Haaala!, Girillo, toi18n. Charla sobre desarrollo de aplicaciones en Android. @cgpcosmad

¿Quieres publicar en Adictos al trabajo?

Te puede interesar

Aprende cómo migrar tu sitio Joomla 3 a Joomla 5 de forma segura, manteniendo el diseño, la funcionalidad y compatibilidad con extensiones. Una guía paso a paso con recomendaciones, imágenes y buenas prácticas para actualizar sin sorpresas.
Descubre qué es Yocto Project, sus ventajas, usos reales en Izertis y cómo crear tu propia distribución Linux para Raspberry Pi paso a paso, de forma sencilla y flexible.
¿Trabajas con Drupal y SonarQube 9.9? En este artículo exploramos cómo adaptar el análisis estático para evitar falsos positivos, desactivar reglas conflictivas del Quality Profile y delegar el estilo a PHP CodeSniffer. Una guía práctica para mejorar la integración sin depender aún de SonarQube 10.