Tras la “movida” que me supuso perder la base de datos de mi tesis, y conseguir recuperarla, os cuento con más detalle varias cosas que he aprendido, y dado que la entrada anterior era muy larga, he preferido contarla en una nueva entrada. Aquí os dejo las lecciones aprendidas por no tener copias de seguridad, tras el “incidente” con MySQL.
El problema: base de datos corrompida
Pues, básicamente, que se corrompe la base de datos y eres incapaz de acceder a ella, cuando la última vez te fue perfectamente posible. El motivo: según pone, cierre no esperado de la base de datos.
La verdad es que hubiera sido menos problema si hubiera tenido un backup bastante reciente, pero no era el caso. Quizás, dejadez por mi parte, si bien esto no debiera haberme pasado.
Un maniatico de los backups
Con el paso del tiempo, algunos compañeros de la oficina con los que trabajo conocen mi manía por realizar backups de los proyectos vivos con los que trabajo, y a ser posible, automatizados.
Tal y cómo os conté en esta entrada cómo realizar copias de seguridad utilizando 7-zip, este procedimiento es lo que uso en mi uso diario para hacer copia de seguridad de los proyectos en los que trabajo. Es vital, para ello, disponer de una buena organización.
En mi caso, tengo un subdirectorio para los desarrollos web, y en función de si están concluidos los paso a otra carpeta de terminados. De esta forma, puedo hacer copias con cadencias más largas de ciertos proyectos que se modifican menos, y casi diariamente de los que tengo activos.
Esta configuración me ha permitido librarme de más de un desastre:
- ¿cómo que he perdido este archivo?
- Pues, mejor vuelvo a lo que tenía hace dos días
Lamentablemente, los responsables informáticos de mi empresa no ven conveniente utilizar GitHub para gestión de versiones de software, y realmente, en mi opinon, es un problema no disponer de esta herramienta. Así que me he tenido que buscar la vida para disponer de un sistema que me lo permita, y encima sin depender de ello.
Lo ideal es disponer de un disco duro externo dedicado en exclusiva a este propósito.
Puedes hacer uso de las tareas programadas para la ejecución de scripts .bat (que son los que yo uso), o bien, poner un enlace a tu script en el fichero inicio de tu perfil de Windows (si es el Sistema Operativo que usas), y de esa forma, tendrás automatizado el proceso (es lo que uso).
Leeción principal: Prueba las copias de seguridad!!!!
Pero si importante es realizar backups, más importante es aún probar de que los backups funcionan al recuperar. En el caso de ficheros, es sencillo, pero en el caso de las bases de datos, es muy posible que alguna vista se te haya quedado con alguna tabla borrada y salte un error.
En el caso concreto de las bases de datos MySQL o MariaDB, probar los backups permitirá realizar las modificaciones necesarias para tener en perfecto estado tus bases de datos, evitando problemas futuros.
Invierte tiempo en el tema de los backups, porque en caso de pérdida de ficheros, o corrupción de una base de datos, o por motivos de ramsonware, puede suponer una inversión en tiempo (y dinero, y bronca con el jefe) muy rentable.
Más de un disgusto he visto en mi oficina por no disponer de algo tan sencillo como un .bat copiando ficheros de una unidad a otra, perdiendo el trabajo de meses!!!
Pues nada, si te he convencido, colabora al mantenimiento del blog! Happy coding!