MySQL: ¿cómo restaurar desde una copia previamente guardada del directorio de datos?

2

He guardado previamente una copia del directorio / var / lib / mysql / ddms ("ddms" es el nombre de la base de datos). Ahora instalé un nuevo MySQL en un Ubuntu 10.04.3 LTS recién instalado ejecutando apt-get install mysql-server, Creo que la versión 5.1 fue instalada. Después de copiar el directorio ddms en / var / lib / mysql, algunas de sus tablas funcionan bien, estas son las tablas con un conjunto asociado de tres archivos: un archivo .frm, un archivo .MYD y un archivo .MYI.

Sin embargo, hay dos tablas con un conjunto diferente de archivos: un archivo .frm y un archivo .ibd. Estas dos tablas no aparecieron en la lista de tablas en phpMyAdmin. Cuando miro el registro de errores, dice:

[ERROR] Cannot find or open table ddms/dictionary_item from
the internal data dictionary of InnoDB though the .frm file for the
table exists. Maybe you have deleted and recreated InnoDB data
files but have forgotten to delete the corresponding .frm files
of InnoDB tables, or you have moved .frm files to another database?
or, the table contains indexes that this version of the engine
doesn't support.

Por favor ayuda con la restauración de estas dos tablas. Gracias.

Tong Wang
fuente

Respuestas:

1

Bueno, estaba bastante marcado cuando vi este error después de actualizar xampp.

Lo arreglé por instalar una versión anterior de xampp en otro directorio (que incluía una versión anterior de mysql) y luego volver a iniciar sesión en phpmyadmin. Entonces pude exportar las bases de datos que no funcionaban en la versión más reciente. (Mis tablas funcionaron en la versión anterior pero no en la nueva)

Nota Esta fue una instalación de Windows. Mi versión anterior era xampp 1.7.7 en la que el MySQL incluido era MySQL Server 5.5

relipse
fuente