Las bases de datos siempre me parecieron una de las cosas mas complejas que he conocido en informática (he conocido poco entonces, dirán muchos). La cuestión es que ese concepto de “archivo dinámico” que mastiqué hace ya varios años en una clase de Access siempre me generó demasiado respeto, es más, podría decirles que hasta miedo.
Ese miedo me volvió medio fanático del backup de las bases de datos (junto con el de archivos). Encima que es complicadito el tema la interfaz clásica del manejo de las mismas (mediante PHP Myadmin) suele ser bastante difícil de entender a priori, pero con paciencia y con saliva, el elefante se come a la hormiga vamos a poder, al menos, manejar las básicas. Creo que principalmente por esto suele suceder que el backup de las bases de datos es relegado y hasta olvidado. Luego pasan episodios como el reciente de El Server (recomiendo el artículo de Garcholonte Blasfemius al respecto) y muchos se quieren matar, cuando si bien no me encuentro en posición de juzgar creo que no podemos delegar tanta responsabilidad como puede ser el trabajo de sitios webs de miles de dólares a una empresa, más aún cuando últimamente hemos visto como gigantes como Google o Flickr pierden los datos.
(El incidente de El Server tuvo mucho ruido en Twitter… y mucho hosting buitre se aprovechó)
Este post tiene como idea dar una explicación lo más sencilla posible a aquellos webmasters novatos que instalaron un CMS o aplicación web mediante un Panel “clic fácil” o se lo instalaron en su hosting. Esto hace que haya usuarios o administradores de weblogs o foros que no sepan del todo bien ni siquiera un mantenimiento básico de una base de datos (de hecho a mi no hace demasiado tiempo W. me explicó como hacer un repair de una tabla) ¡Así que vamos a ver como hacer un backup de las bases, carajo!
Primero: saber la URL de PHPMyadmin…
Eso depende de nuestro hosting y cómo hayan configurado la aplicación. Algunos lo configuran para que sea simplementa http://urldelsitio/phpmyadmin y otras suelen ser URL’s mas complejas. Lo mejor es ingresar al panel (por lo general Cpanel) e ingresar a phpmyadmin en el buscador o si se es vago para escribir buscarlo en el panel lateral (0)
Segundo: Ejecutar PHPMyadmin.
Ahora ingresamos en la aplicación en si misma, veremos las bases de datos a la izquierda y el “area de trabajo” a la derecha. En la parte superior vemos la mayoría de las acciones a realizar.
A nosotros nos interesa exportar las bases, así que hacemos clic en esa opción (1). Luego seleccionamos todas las bases (2), elegimos que el backup sea comprimido porque la diferencia en tamaño es brutal (3) y por último le damos clic a continuar (4).
Listo, ya tenemos nuestros backups.
Para “subir” los backups simplemente hacemos el inverso, comenzando con importar.
Obviamente este es el procedimiento mas general, por suerte existen aplicaciones para la mayoría de los CMS que hacen backups directamente (y hasta te envían la BD por e-mail), como por ejemplo WP DB Backup.
El uso es muy simple, dentro de herramientas encontramos la opción “Backup”.
Y la interfaz es APB
Lo mejor es que incluso podemos programar (backups por hora, por día, por mes…) gracias a CRON.
Eso es todo, no es tan difícil al fin y al cabo
Útil post para recordar tener un respaldo de la base (y oportuno también jeje).
Yo recomiendo desactivar la opción «USAR INSERTS EXTENDIDOS», esto va a ayudar a la hora de restaurar el back-up, y es casi esencial para bases de datos grandes (esto es relativo a la velocidad del servidor), ya que podemos usar scripts como BigDump (http://www.ozerov.de/bigdump/) que restauran el backup progresivamente, eliminando el factor «time out» si la restauración se torna demasiado larga y queda truncada.
Interesante el dato del BigDump!
Lo voy a tener en cuenta cuando me toque manejar bases grandes =)
Me acabo de enterar del incidente de ElServer, que desastre por Dios!
Bien por el artículo para refrescar la buena práctica que significa hacer backups de las bases de datos.
Buen fin de semana. Un abrazo.
Nacho
Lo de la frase que citaste… ¿no era «despacito y con saliva el elefante se COGIÓ a la hormiga»?
Y con respecto del que escribió el post… ¿No es Gabolonte en lugar de «GarcholonteX?
¿O era todo uno de tus típicos cazaboludos y volví a caer xD?
Saludos!!!
1) La frase se adecúa a un sitio apto para todo público
2) El nickname de Gabo va variando con el tiempo
Era de esperarse algo así.
Lo barato sale caro…
Lo mejor es automatizar esta práctica. Hacer un script que no solamente te haga backup de la DB sino también de los archivos.
Yo utilizo en el hosting contratado un script con cron que hace backup completo y lo descargo automáticamente también con un cron y wget desde mi máquina.
El hosting tiene cpanel
http://forums.cpanel.net/f49/automatic-cpanel-backup-domain-mysql-cron-php-111213.html
gracias zeta por el aporte
salu2
En mi experiencia el HeidiSQL es lo mejor para hacer una importación o backup de una BD. No tenés errores de timeout que phpMyAdmin a veces te tira.
Guille, te recomiendo que pruebes con MySQLDumper, ya que te permite usar CRON, envio al mail, backup/recupero de las bases de datos de tamanio ilimitado, etc. Desde PHPMyadmin la limitante es que si no tenes un dedicado tenes un limite de tamanio de subida de archivo cuando queres recuperar un backup.