Estoy tratando de ejecutar PHP 5.4.1 (compilado desde la fuente) pero cuando intento conectarme en mysql obtengo:
Warning: mysql_connect(): The server requested authentication method unknown to the client [mysql_old_password] in
Cuando se usa PHP 5.3 / 5.2 funciona normalmente. ¿Alguna idea de qué causa este problema?
Respuestas:
Intenta leer esto: enlace
MySQL introdujo hashes de contraseña más largos en (creo) la versión 4.1, y su servidor probablemente todavía los usa (verifique los hashes de contraseña de 16 bytes en su tabla de usuario de mysql). Las versiones más nuevas usan hashes de contraseña más largos. Su servidor admite ambos, pero su cliente (php) parece admitir solo los nuevos en esta versión (y en adelante).
Si es posible, use la solución desde el enlace en la primera línea y configure su contraseña nuevamente con el nuevo hash, pero tenga cuidado, si está utilizando otros clientes (antiguos) que dependen de contraseñas antiguas, la compatibilidad podría romperse. También intente buscar soporte de contraseña antigua para MySQL en PHP, pero no estoy seguro de eso.
fuente
fuente
Sé que este es un tema antiguo, pero solucioné el problema sin tener que actualizar / degradar nada. Básicamente comenté la línea old_passwords = 1 en mi archivo my.cnf, reinicé mysql, agregué / modifiqué al usuario que finalmente obtuvo el hash de 16 bytes, luego volví y descomenté la línea old_passwords = 1, y reinicé mysql. Así que básicamente:
Así que ahí lo tiene: 1 usuario que usa un nuevo tipo de contraseña, mientras que otros usuarios tienen sus viejos tipos de contraseña. ¡Y todos pueden iniciar sesión! ;)
fuente
Muchas veces esto puede suceder si su servidor MYSQL está utilizando un hash de contraseña antiguo , cambia la contraseña o actualiza el servidor para obtener el hash de contraseña más reciente que corrige el problema de autenticación.
fuente
Recibí un mensaje similar al intentar actualizar mi instalación de mediawiki. Estoy usando Netfirms como mi proveedor de alojamiento y lo resolví iniciando sesión en el panel de control, yendo al área de MySQL y cambiando la base de datos que estaba utilizando mediawiki. Luego pude continuar con la actualización de mediawiki.
fuente