jueves, abril 22, 2010

Login lento en MySQL

Instalamos un servidor de BD en Windows, el cliente (nuestro ambiente web) corre en un Linux, la aplicación jalaba muy lenta, al hacer varias pruebas nos percatamos que el problema era el tiempo que tomaba (unos 6 segundos aprox.) el Linux en validar credenciales de MySQL, después de ello las consultas corrían bastante bien.

Si conectábamos un cliente Windows (en mi equipo para probar) al mismo servidor el tiempo de login era inmediato, así que suponíamos que el problema era con el servidor Linux.

Tras buscar soluciones, encontré un dato muy interesante, contra todas mis teorías la modificación para corregir ésta situación no se tenía que hacer en Linux, sino en el servidor de BD, basta con modificar el archivo my.ini y agregar en la sección mysqld la siguiente línea:

skip-name-resolve

Reinicié el servicio y todo jaló a la perfección, éste parámetro tiene que ver con la resolución por medio del DNS, al principio no le encontré lógica alguna, ya que la conexión que realizo la hago mediante IP y no por nombre de host, por tal motivo parecería que el DNS sirve para nada en éste caso, pero por algún motivo ésto funcionó.

Espero sea de utilidad para algunos.

No hay comentarios.: