Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 2

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 3

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 4

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 5

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 6

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 7

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 8

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 9

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 10

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 11

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/inicio.phtml on line 12

Warning: Cannot modify header information - headers already sent by (output started at /home/webjoa/public_html/lib/inicio.phtml:2) in /home/webjoa/public_html/lib/jpcache/jpcache-main.php on line 170

Deprecated: Function set_magic_quotes_runtime() is deprecated in /home/webjoa/public_html/ads/config.inc.php on line 176
MySQL 4 y PHPJoaquin's Weblog. WebEstilo.
image

Deprecated: Function eregi() is deprecated in /home/webjoa/public_html/lib/clspagina.phtml on line 48
Inicio » Weblog » Joaquin's Weblog

MySQL 4 y PHP

09.02.2005
Categoría: — Joaquin @

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?


Comments are closed.





WebEstilo.com - Introduzca su e-mail y conozca las novedades. No hacemos Spam.
Enlaces
Viagra Free Pills Sample
Cocina Facil IngenieroSoftware.com  
Google
  Web WebEstilo.com   
Última modificación:16 de Agosto de 2006. Spain - España.
© 1998-2004 por Joaquin Gracia. Todos los derechos reservados.