¿Cómo crea script con PHP para importar archivos .sql enormes en MySQL, phpmyadmin, MariaDB?

19/09/2023
Script PHP para importar archivos .sql
294
Views

¿Alguna vez te has enfrentado a la frustración de intentar importar una gran base de datos .sql en MySQL por consola o bien por phpMyAdmin solo para encontrarte con que el proceso se queda atascado o incluso se bloquea por completo? ¡No estás solo! Esta misma semana he tenido muchos problemas como este, ya que en mi trabajo hemos migrado par de sitios web en WordPress a otro Hosting. Para ello logramos migrar los archivos sin problemas, pero la cuestión es que a la hora de ir por la base de datos, al intentar importar el archivo .sql por phpmyadmin, se quedaba en blanco luego de un tiempo, o se importaba la data de manera incompleta y en varias ocasiones solo fallaba sin mostrar algún error.

Al principio con una de las bases de datos, mi compañero y yo decidimos por el tiempo, abrir el archivo .sql en el editor de código como visual studio code, e ir copiando fracciones de del código, y en la sección SQL del phpmyadmin pegar y ejecutar, de esa manera luego de unos minutos tener toda la información de manera exitosa, pero sabiendo que esta no es la mejor manera, ni la más eficiente decidí después del trabajo crear un script PHP que me ayudara en una próxima ocasión, y en casos que tenga bases de datos enorme, mayor a 200 MB ahorrar tiempo y estrés.

De tal manera que en este post, compartiré una solución efectiva para este problema utilizando un script PHP personalizado que he creado. Podrás importar tus bases de datos .sql de manera eficiente y sin problemas. ¡Vamos a ello!

El problema:

Importar una base de datos .sql en MySQL puede ser un dolor de cabeza, especialmente cuando se trata de archivos grandes. Incluso al aumentar los valores de configuración en PHP, como max_execution_time, max_input_time, upload_max_filesize o memory_limit, a menudo nos encontramos con que la importación sigue siendo lenta o falla inesperadamente. Esto puede ser una pesadilla para los desarrolladores y administradores de bases de datos.

La solución:

Para abordar este problema, he creado un script PHP personalizado que simplifica el proceso de importación de bases de datos mediante un archivo .sql. Aquí hay algunos aspectos destacados de cómo funciona:

  • Optimización de PHP: El script configura adecuadamente la configuración de PHP para manejar grandes archivos de bases de datos y evitar bloqueos.
  • Seguimiento en Tiempo Real: Proporciona un seguimiento en tiempo real de la importación, mostrando el progreso y los detalles de cada operación.
  • Compatibilidad con Diferentes Operaciones: Reconoce y muestra mensajes específicos para operaciones como creación de tablas, inserción de datos, alteración de tablas y más.

Cómo Usar el Script PHP:

  1. Descargue el script: Comience descargando el script, puede hacerlo yendo al repositorio https://github.com/th3khan/import-sql
  2. Implemente el script en su servidor Apache: Cargue el script en su servidor web Apache. Puede colocarlo en el directorio deseado donde desea ejecutar el proceso de importación. Por ejemplo, puede cargarlo en el directorio raíz de su servidor.
  3. Acceda al script en su navegador web: Abra su navegador web y navegue hasta la URL del script ingresándola en la barra de direcciones. El formato de la URL debería ser algo así como: http://tudominio.com/import-sql.php
  4. Configurar los detalles de la conexión de la base de datos: Una vez que acceda al script a través de su navegador web, se mostrará un formulario que le permitirá ingresar los detalles de conexión de su base de datos:
    • Nombre de la base de datos.
    • Nombre de usuario.
    • Contraseña.
    • Carga de archivos: puede cargar el archivo .sql directamente desde su computadora o, si previamente cargó el archivo en el mismo directorio que el script, puede ingresar el nombre del archivo sin la extensión .sql. Por ejemplo, si su archivo se llama ‘database_backup.sql’, simplemente puede ingresar ‘database_backup’.
  5. Haga clic en «Generar»: Después de completar los detalles necesarios de conexión a la base de datos y seleccionar el archivo, haga clic en el botón «Generar» para iniciar el proceso de importación.
  6. Complete la importación: El script manejará el proceso de importación de manera eficiente, proporcionando actualizaciones en tiempo real y seguimiento del progreso. Una vez que se complete la importación, recibirá un mensaje de éxito.

Conclusiones:

Con este script PHP personalizado, podrás importar tus bases de datos .sql en un gestor de bases de datos MySQL sin los problemas de rendimiento que solías enfrentar. Es una solución efectiva y útil para cualquier desarrollador o administrador de bases de datos que trabaje con archivos de bases de datos grandes. ¡Ahorra tiempo y evita frustraciones en tu próximo proyecto!

Espero que encuentres este script tan útil como yo, y que te ayude a agilizar tus tareas de importación de bases de datos. También puedes seguir una demostración paso a paso del funcionamiento del script en el siguiente video. Puedes ver el video junto a esta publicación para obtener una guía visual completa.

Si te ha parecido interesante, te invito a seguir leyendo alguna de las otras publicaciones en el blog, Gracias, hasta la próxima.

Article Categories:
Programación · Código · MySQL · PHP

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

El tamaño máximo de subida de archivos: 2 MB. Puedes subir: imagen, texto. Los enlaces a YouTube, Facebook, Twitter y otros servicios insertados en el texto del comentario se incrustarán automáticamente. Suelta el archivo aquí