post icon

Ganar velocidad de conexión en MySQL

Hace unas semanas atrás nos tocó una mala pasada con mis compañeros de trabajo, una de nuestras aplicaciones se conecta con JDBC a MySQL, en laboratorio y en casi todos los lugares donde estaba implementado, funcionaba velozmente, pero en la última implementación, teníamos retardos y timeouts, lo primero que hicimos fue subir el tiempo de espera del JDBC, y se conectaba pero tardaba demasiado, (siendo ya un tiempo muy incomodo para el usuario). Verificamos los cables de red, las NIC, y otras tantas cosas, que estando entre varios se nos agotaron las ideas.

Luego nuestro compañero El Gran Che, nos dió la luz. Todo el embrollo se debía a una configuración del motor de la BD. Este cuando recibía peticiones de conexión tenía activo la opción de resolver el DNS, al “no estar correctamente configurada” la configuración de red para el motor, este tardaba en responder, por no encontrar al DNS.

La manera de desactivar esto es muy sencilla, en el siguiente fichero de nuestro GNU/Linux:

1
/etc/mysql/my.cnf

Esto lo editamos con vim, nano, gedit o cualquier otro editor de texto que tengamos a mano, buscamos el apartados mysqld para agregar la siguiente linea:

1
2
3
4
5
6
7
[mysqld]
port = 3306
.
.
skip-name-resolve #siendo esto lo nuevo
.
.

Y por último solo necesitamos reiniciar el servicio. Con esto quedaría mucho más veloz nuestra conexión siempre y cuando la red no esté preparada para tal efecto:

1
/etc/init.d/mysql restart

Comentarios desde Facebook:

  1. avatar
    TomCody SPAIN Internet Explorer Windows
    30 marzo 2010 at 07:15 #

    Hola:

       Daros las gracias acababa de instalar MySQL en un maquinon y le costaba 10 seg abrir una conexion y en el viejo servidor ( un PIII no llegaba a 1 seg ). Despues del cambio en el my.cnf  le cuesta 0.5 seg y me falta optimizarlo.

    Muchas gracias por vuestra ayuda.

    • avatar
      GeekZero Google Chrome Windows
      31 marzo 2010 at 21:04 #

      Que bueno que te ha servido 😀 A mi me pasaba justamente lo mismo y estuve días buscando la razón de este problema, ojalá no haya sido tu caso..

Responder