OLD_PASSWORD en Mysql

Cuando Mysql pasó a la versión 4.1, la mayoría hicimos el cambio, actualizamos la base de datos, se habrá ajustado el código si correspondía, y se actualizaron los conectores de Mysql.

Uno de los cambios fue en el algoritmo de autenticación que utiliza la base de datos.

Muchos de los programas que se utilizaban, hicieron lo propio, y también actualizaron; pero hubieron algunos que no lo lograron (por los motivos que sea). En mi caso, fue el DBDesigner el que me trajo algo de dolor de cabeza.

Al querer conectarse, se obtenía un poco agradable mensaje que rezaba.

Client does not support authentication protocol requested
 
by server; consider upgrading MySQL client

Por suerte, existe una solución de compatibilidad.

El truco está en la forma en que especificamos la contraseña del usuario que vamos a usar desde el cliente problemático. La instrucción para lograr que dicho usuario se conecte sería la siguiente.

mysql> SET PASSWORD FOR 'usuario'@'host' = OLD_PASSWORD('contraseña');

Es la función old_password la encargada de garantizarnos la compatibilidad.

Como siempre, una visita por la documentación oficial nunca está de más.