Skip to main content

Cómo Resolver la Lentitud de phpMyAdmin en un VPS de Donweb con Ferozo

Alejo Sotelo - Developer
Alejo A. Sotelo - @alejoasotelo
Publicado el 16 Agosto 2024

Cómo Resolver la Lentitud de phpMyAdmin en un VPS de Donweb con Ferozo

Te pasó alguna vez que intentaste explorar con phpMyAdmin una base de datos con tablas InnoDB y te andaba extremadamente lento? Si es así, abajo te paso una posible solución.

Introducción:

Hace poco me encontré con un problema que puede ser frustrante si no se identifica rápidamente la causa. Al montar un entorno LAMP en un VPS de Donweb utilizando Ferozo como panel de control, noté que la navegación en phpMyAdmin era extremadamente lenta. Lo curioso es que este problema se presentaba solo en phpMyAdmin, mientras que la navegación en el Prestashop que utilizaba la misma base de datos era fluida y rápida.

Después de algunas pruebas y un poco de investigación, encontré la solución. En este artículo, te cuento qué causaba la lentitud y cómo solucionarlo modificando una simple línea en la configuración de phpMyAdmin. Si te dedicas al desarrollo web o eres sysadmin, esto podría ahorrarte un buen dolor de cabeza.

El Problema: Lentitud en phpMyAdmin

El escenario era el siguiente: teníamos una base de datos con varias tablas en InnoDB, algunas de ellas con más de 300.000 filas. Cuando intentaba navegar por la base de datos utilizando phpMyAdmin, la respuesta era extremadamente lenta, podía tardar varios minutos. Esto, por supuesto, entorpece el trabajo diario, especialmente cuando necesitas realizar cambios rápidos o consultas en tiempo real.

Lo primero que pensé fue que el problema estaba relacionado con el rendimiento general del servidor, pero como mencioné antes, la aplicación Prestashop funcionaba sin problemas. Esto descartó un problema de configuración general del servidor o de la base de datos.

La Solución: Cambiar Localhost por 127.0.0.1

Después de investigar un poco, encontré que el problema estaba relacionado con cómo phpMyAdmin se conectaba al servidor MySQL. La configuración por defecto de phpMyAdmin en Ferozo apunta a 'localhost'. Aunque suena lógico, resulta que en este caso 'localhost' puede causar problemas de rendimiento debido a cómo se resuelven los nombres de host.

La solución fue simple: cambiar la configuración para que phpMyAdmin se conectara a través de '127.0.0.1' en lugar de 'localhost'. Aquí te muestro cómo hacerlo:

  1. Abre el archivo de configuración de phpMyAdmin

    Este archivo se encuentra en /opt/ferozo/phpmyadmin/config.inc.php.

  2. Ubica la siguiente línea

    $cfg['Servers'][$i]['host'] = 'localhost';
  3. Cámbiala por lo siguiente

    $cfg['Servers'][$i]['host'] = '127.0.0.1';
  4. Guarda los cambios y reinicia el servidor si es necesario.

¿Por Qué Funciona Esto?

La diferencia entre 'localhost' y '127.0.0.1' puede parecer mínima, pero en realidad afecta cómo se establece la conexión. Al usar '127.0.0.1', forzamos una conexión a través de IPv4, que es más directa y en este contexto, más rápida. Saltear la resolución de nombres de host que en algunos casos puede causar retrasos adicionales.


Conclusión

Este pequeño ajuste en la configuración de phpMyAdmin puede ser la clave para mejorar significativamente la velocidad de navegación de minutos a milisegundos en bases de datos en servidores VPS de Donweb con Ferozo. Aunque es un cambio sencillo, tiene un impacto notable en el rendimiento. Si alguna vez te encuentras en una situación similar, espero que este artículo te haya ayudado a resolverlo rápidamente.

 

Más artículos de Alejo A Sotelo - Desarrollo Web

19 Julio 2024

Cómo detuve un ataque de Bots en un Formulario de Contacto sin reCAPTCHA

Hoy quiero compartir una experiencia reciente que tuve con un ataque de bots a un formulario de contacto en uno de mis proyectos. Este incidente me llevó a profundizar en los logs de acceso y a implementar una solución rápida p...
20 Diciembre 2022

Liberar memoria ram en servidor CentOS

Cómo hacemos para liberar la memoria ram de nuestro servidor CentOS? Bueno, entramos por ssh al servidor y luego ejecutamos los siguientes comandos: free -m sudo sync && sudo sysctl -w vm.drop_caches=3 free -m ...
25 Febrero 2022

Cómo funciona React, Vue, Angular o frameworks parecidos a nivel técnico?

Alguna vez te preguntaste cómo funcionan los frameworks reactivos de javascript como Vue, React, Angular, etc. a nivel técnico? Si tuviste esta curiosidad te recomiendo leer este post del 2016 https://www.monterail.com/blog/20...
02 Octubre 2020

Soy Desarrollador Mercado Pago Certificado

Para Online Payments Checkout Pro. Esta semana participé del "Mercado Pago Developer Partner Program" y luego de realizar el examen correspondiente fuí aprobado para ser "Mercado Pago Certified Developer for Online Payments ...