Respaldar fácilmente tu base de datos desde phpmyadmin y ssh

Aunque para muchas veces es más fácil hacer un respaldo a través de el panel de control de un servidor (cpanel, DirectAdmin, etc.) y que para cada base de datos hay formas personalizadas de activar las opciones de phpmyadmin, aquí te pongo la forma más recomendable para que puedas respaldar tu base de datos sin que luego te dé problemas a la hora de querer transferirla a otro servidor.

Accesa a phpMyAdmin poniendo en la barra de tu navegador la dirección y el puerto que tu proveedor de hosting te haya dado.

Da clic en Databases (Bases de Datos)

Da un clic en la base de datos que deseas salvaguardar

Busca la pestaña Export (Exportar) y da un clic en ésta

Aparecerá una nueva pantalla a la derecha de phpMyAdmin

A la izquierda de esta aparecerá Export (Exportar)

Ve que estén todos los campos marcados, sino, da clic en Select All (Seleccionar Todo)

Verifica que esté seleccionada la opción SQL

Ahora, a la derecha de la pantalla, en donde dice Options (Opciones)

En ella, ve a la seccion Structure (Estructura)

Activa la opción Drop Table/View/Procedure/Function (Eliminar Tablas/Vistas/Procedimientos/Funciones)

Ve que esté activa ADD IF NOT EXIST (Añadir Si No Existe)

Revisa que esté activo AUTO_INCREMENT (Autoincremento)

Verifica que en tablas y nombres de campo esté activo el uso de BACKQUOTES (Comillas Dobles)

Ahora pasemos a la sección de manejo de DATA (Datos)

Revisar que esté activa completar INSERTS (Inserciones)

En donde dice EXTENDED INSERTS (Inserciones extendidas), actívala para reducir el tamaño de la descarga de la base de datos.  Pero desactívala si notas que cuando importas tu base de datos a otro servidor, te marca

"Fatal error: Allowed memory size of xxx bytes exhausted" o
"MySQL server has gone away"

En donde dice DELAY INSERTS (Inserciones retrasadas), actívala únicamente si luego de descargar tu base de datos con las inserciones extendidas (EXTENDED INSERTS) desactivadas, notas que cuando importas tu base de datos a otro servidor, te sigue marcando

"Fatal error: Allowed memory size of xxx bytes exhausted" o
"MySQL server has gone away"

Revisa que esté activa la opción IGNORE INSERTS (Ignorar inserciones)

Verifica que esté activa la opción Use HEX FOR BLOB (Hexadecimal en Campos Binarios)

En el menú, checa que el tipo de exportación esté en INSERT (Insertar)

Ahora pasamos a la sección SEND (Enviar: genera un archivo descargable)

En la Plantilla del Nombre del Archivo, lo recomendable es dejar __DB__ para que descargue el archivo con el nombre de tu base de datos, pero también puedes usar __SERVER__ para que tenga el nombre del servidor, o poner un nombre que tú deseés.

En Tipo de Compresión, lo recomendable es usar ZIP o GZ, para que el servidor comprima tu archivo antes de descargarlo, pero también puedes descargar la base de datos sin compresión, lo cual hará que tarde más la descarga.

Ya que tengas todo, da clic en CONTINUE (Continuar) y listo, a continuación tu base de datos será trasladada a tu ordenador.

Recuerda que esta es una opción alternativa al uso del panel de control del server (DirectAdmin, CPanel, etc.), y a la de la línea de comandos ssh (acceso al servidor)

$ mysqldump --opt -u USUARIO -pCONTRASEÑA BASE_DE_DATOS > ARCHIVO.sql

Luego, si deseas compactarlo para que no ocupe demasiado espacio en el disco duro del servidor, o deseas descargarlo con mayor rapidez, usa el siguiente comando:

$ gzip -v -9 ARCHIVO.sql

A tí, ¿qué tipo de opciones te van mejor a la hora de respaldar tu base de datos?

1 comentario:

Anónimo dijo...

Gracias por la explicación es muy legible

Publicar un comentario