martes, 26 de abril de 2011

levantar base mysql teniendo archos

Para situarnos en el problema, vamos a suponer que tenemos un equipo andando perfecto con mysql, y este equipo se rompe algo del sistema operativo (en mi caso Linux) pero podemos acceder a los archivos del disco, entonces lo que queremos hacer es instalar el S.O. y luego levantar las bases que tenía antes, vamos a suponer también que no tenemos un respaldo.
Las bases que yo utilizo son InnoDB, así que este proceso es factible con este tipo de formato, con MyIsam, no lo puedo asegurar

Lo primero que tenemos que hacer es instalar el sistema operativo y el mismo mysql que teníamos antes (si tenemos exactamente la misma versión mejor, sino quizás el proceso no funciona).
Ahora bajamos mysql para que no moleste ni tenga ningún archivo lockeado.
Luego tenemos que copiar los archivos de configuración del mysql y los archivos de datos del disco roto, a el nuevo disco, esto es el archivo my.cnf, y todo lo que está en la carpeta /var/lib/mysql, tanto el o los archivos ibdata, como las carpetas, si se fijan las carpetas tiene los nombres de las bases de datos.
Debemos de fijarnos que los permisos de la carpeta /var/lib/mysql queden como originalmente, normalmente solo el usuario mysql puede hacer cosas en estos archivos o carpetas, pero si no llegan a darle en la tecla, le dan permisos totales (obviamente esto es un problema de seguridad).
Ahora reiniciamos el servicio de tomat, y si tenemos suerte van a quedar levantadas las bases que teníamos con los datos que teníamos.

Resumen:
1 – instalar S.O. y MySql
2 –bajar mysql
3 – copiar archivos de configuración de disco roto a nuevo disco
4 – copiar archivos y carpetas de datos del disco roto a nuevo disco
5 – verificar permisos
6 – levantar mysql y probar

No hay comentarios: