MySQL 4 y PHP
Si tienes instalado MySQL 4 y te estás conectado a la base de datos con clientes “viejos”, puedes tener problemas de conexión al servidor de MySQL.
Este problema se manifiesta de la siguiente manera “Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client“.
Lo que te pasa es lo siguiente:
- Tienes instalado MySQL 4.x
- Tienes el PHP configurado en la sección mysql con “Client API version 3.x“
¿Como averiguar el Client API Version? Muy fácil, lo puedes mirar ejecutando < ? phpinfo(); ?>, que devuelve la configuración actual del PHP.
Entonces tienes 2 opciones para arregla esto:
- Actualizar el cliente MySQL del PHP con la “Client API version 4.x”
- Hacerlo funcionar a martillazos.
La primera es más elegante y correcta, pero a veces no podemos actualizar el PHP porque no tenemos privilegios o simplemente ganas, así que explicare la segunda.
El problema reside en que en la versión 4 de MySQL han mejorado el sistema de almacenamiento de password, si te estas conectado a un MySQL 4 desde un cliente 3, la conversión que hace del password para pasárselo al MySQL no coincide con la que espera recibir el servidor.
El “truco” está en cambiar la forma que MySQL 4 almacena los passwords para que use la vieja, así que después de crear el usuario tienes que hacer lo siguiente:
SET PASSWORD FOR 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
¿Más soluciones a este problema?
February 21st, 2005 at 19:22
Yo estoy con este problema.
Soy iniciante en MySql e no se como puedo actualizar el cliente MySQL del PHP con la “Client API version 4.x”
Poderia me ayudar, por favor?
Muchas Gracias.
May 25th, 2005 at 04:06
A ver, yo tengo el mismo problema, pero no quiero solucionarlo con la 2ª opción, sino con la 1ª, cómo puedo hacerlo? cómo puedo Actualizar el cliente MySQL del PHP con la “Client API version 4.x”?
June 9th, 2005 at 17:33
El problema que yo tengo, es que tengo instalado mysql 4 y el phpmyadmin me funciona correctamente, pero cuando quiero hacer la conexión con mysql desde macromedia dreamweaver, me da el siguiente error: 1251 Client doesn’t support authentication protocol requested by server;consider upgrading MySQL Client. He desinstalado mil veces el mysql y he instalado una versión mayor, pero me sigue dando el mismo problema. ¿Qué debo hacer?¿Cómo podría solucionar el problema?Muchas gracias de ante mano!!
June 9th, 2005 at 17:34
El problema que yo tengo, es que tengo instalado mysql 4 y el phpmyadmin me funciona correctamente, pero cuando quiero hacer la conexión con mysql desde macromedia dreamweaver, me da el siguiente error: 1251 Client doesn’t support authentication protocol requested by server;consider upgrading MySQL Client. He desinstalado mil veces el mysql y he instalado una versión mayor, pero me sigue dando el mismo problema. ¿Qué debo hacer?¿Cómo podría solucionar el problema?Muchas gracias de ante mano!!
July 20th, 2005 at 15:04
La cuestión es si es posible aprovechar todas las mejoras de la versión superior utilizando el segundo sistema. Por ejemplo, seleccionar el puerto de comunicaciones en la conexión (p.e.: mysql_conect(”localhost:3306″,”usuario”,”password”).
Gracias. Un saludo.
August 16th, 2005 at 22:12
En Casa tengo MySQL 4.1.9 y PHP 4.3.11 lo ejecuto desde IIS.
En la Oficina tengo MySQL 4.1.9 y PHP 4.3.11 pero lo ejecuto con Apache2 …
En ambos Casos, cuando ejecuto phpinfo() me sale:Client API version 3.23.49
En Casa me vota el error: “Client does not support authentication protocol requested by server; consider upgrading MySQL client”…
pero en la oficina NO…. que puede ser??? he intentado en casa con Apache2 y nada… Gracias!!
December 22nd, 2005 at 16:13
hola soy analista de sistemas y tengo un gran problema
tengo instaldo php5.1.1, mysql5.0 y apache 2.0,
cuando habilite el soporte de mysql y mysqli a php el servidor dejo de arrancar y me aparece el siguiente error
Syntax error on line 233 of /etc/apache/httpd.conf:
Cannot load /usr/lib/apache2/libphp5.so into server: /usr/lib/apache2/libphp5.so: undefined symbol: mysql_module_entry
si sabe algo sobre la posible causa de este problema por favor hagamelo saber a [email protected]
gracias
May 18th, 2006 at 14:27
#mysql -u root -p
mysql>show databases;
mysql>use mysql;
mysql>update user set password=old_password(’password con la que accesa a mysql’) where user=’root’;
flush privileges;
Saludos
August 26th, 2006 at 17:54
Yo tenia el mismo problema y tome la segunda opcion y resolvio mis problemas gracias por todo manejo php 4.4.4 y Mysql 5 quisiera poder tener tu correo para cualquier consulta gracias
Bueno mi correo es [email protected]
GRacias de veras!!!!!!!!!