Usualmente se tienen problemas para exportar bases de datos MySQL que tengan gran tamaño dentro del proceso de administración de una página web. Tal vez en algún momento haya que mover las bases de datos de un servidor a otro (en el caso de migración de una página web por ejemplo), tras el intento de exportación, recibimos un mensaje de error transcurrido un tiempo prudencial del intento de exportación de datos, lo que sin duda dificulta seriamente el proceso de migración cuando el archivo .sql a exportar tienen un tamaño superior a 50 Mb.

Para solucionar estos inconvenientes te presentaré dos métodos que permiten exportar de forma sencilla grandes bases de datos MySQL cuando no se puede realizar mediante phpMyAdmin por el método de exportación rápido. El primero es un Script que se ejecuta desde el propio servidor donde se exporta la BD y el segundo mediante el método de exportación personalizado:


LightDump: Exportador

Es un script PHP que realiza exportación de bases de datos MySQL, incluso en servidores web con límite de tiempo de ejecución o que están en modo seguro (safe mode) habilitado.

Hubo un código inicial, del 2003, el cual pasó por diversos cambios hasta el 2009, yo realicé algunas modificaciones y lo actualicé para que pueda trabajar y sea compatible hoy en día. Es sencillo de usar y no requiere ningún conocimiento de codificación. Todo lo que necesita son los datos de la conexión de la base de datos.

Descargar el archivo lightdump_exporter.php (LightDump), aquí es necesario agregar los datos de su base de datos en el archivo y sus datos de autenticación (cualquiera que recuerden).

$db_server   = 'localhost';
$db_name     = 'nombre_de_tu_DB';
$db_username = 'nombre_de_usuario_DB';
$db_password = 'contraseña_de_usuario_DB';

$filename = 'nombre_archivo_DB.sql';

$auth_user = 'nombre_de_usuario_de_autenticación';
$auth_password = 'contraseña_de_autenticación';

Después de configurar el archivo lightdump_exporter.php, crear un directorio en la raíz de su sitio web, por ejemplo, www.misitioweb.com/tmp/. El archivo lightdump_exporter.php debe ser subido aquí.

Ahora sólo tiene que ejecutar la secuencia de comandos en el lugar que se ha cargado, desde su navegador llamar al script para su ejecución: www.misitioweb.com/tmp/lightdump_exporter.php. Aparecerá una ventanita de autenticación (el modelo depende del navegador que esté usando) en donde tendrá que ingresar sus datos que ingresó anteriormente en los campos 'nombre_de_usuario_de_autenticación' y 'contraseña_de_autenticación'.

Autenticación
Autenticación

Cuando se lanza el script, no se obtiene el resultado de inmediato en la ventana del navegador hasta que la exportación finaliza. Esto significa que con una base de datos sin comprimir de 1000 Mb (1 Gb), por ejemplo, el resultado tardará en aparecer unos tres minutos aproximadamente, dependiendo de la velocidad del servidor. No cerrar ni hacer nada con esa ventana del navegador, hasta que el script concluya y muestre el resultado.

El script procesa consulta por consulta, lo que significa que da igual el tamaño de la base de datos a exportar. El backup se crea con el nombre de la base de datos y extensión .gz (si el servidor tiene capacidad de compresión) o en todo caso con extensión .sql. El backup creado se guarda en la misma carpeta en que está el script y podrá descargarse del servidor al ordenador desde la misma ventana del navegador.

Una vez concluido el trabajo del script, en la ventana del navegador se obtendrá un resultado similar a este:

LightDump: Exportador


Nota: Por razones de seguridad, una vez finalizado el proceso eliminar el script lightdump_exporter.php y el archivo .sql descargado en su servidor.

Descargar el archivo script PHP.


phpMyAdmin

Para poder exportar una base de datos a través de phpMyAdmin, primero debes loguearte y acceder a tu Panel de Control de tu hosting. Luego debes dirigirte a la zona de "Bases de datos" y ingresar donde dice phpMyAdmin.

Paso 1: Hacer clic en la opción de menú "Exportar".

Exportar Base de Datos MySQL con phpMyAdmin

Paso 2:  En "Método de exportación" marcar la opción "Personalizado".

Exportar Base de Datos MySQL con phpMyAdmin

Paso 3: En el apartado "Tabla(s)" haz clic en "Seleccionar todo" para seleccionar todas las tablas de la base de datos.

Exportar Base de Datos MySQL con phpMyAdmin

Paso 4: En el apartado "Salida" haz clic en el menú desplegable "Compresión" y seleccionar "comprimido con zip".

Exportar Base de Datos MySQL con phpMyAdmin

Paso 5: En "Opciones específicas al formato", en la sección "Opciones de creación de objetos" marca la casilla "Agregar sentencia DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT / TRIGGER".

Exportar Base de Datos MySQL con phpMyAdmin

Paso 6: Por último para descargar la base de datos, en la parte de abajo haz clic al botón "Continuar".

Exportar Base de Datos MySQL con phpMyAdmin

Jorge Andres Amaya

Jorge Andres Amaya

Licenciado en Economía y maestría en Administración, con amplio dominio de diversas herramientas digitales y prompts.