Está en la página 1de 1

Acceder a MySQL 4.

1 o superior con PHP


A partir de la versin 4.1 MySQL ha cambiado, entre otras cosas, su mtodo de identificacin. Esto hace que los clientes de MySQL anteriores a la versin 4.1, como es el caso de PHP, no puedan conectar. Si lo intentamos en PHP obtendremos un error como este:
PHP Warning: mysql_connect(): Client does not support authentication protocol requested by server; consider upgrading MySQL client in /path/path/file.php r.php on line X

Hay varias soluciones a este problema. La ms sencilla, dejar al usuario que nos interesa sin contrasea, pero esta no nos conviene, ya que compromete a la seguridad de nuestro servidor MySQL. Otra solucin es decirle a MySQL que utilice el sistema antiguo de identificacin para cierto usuario. Para ello abrimos la lnea de comandos de MySQL. En windows, Inicio > Programas > MySQL > MySQL Server 4.1 > MySQL Command Line Shell. En linux teclea mysql en la lnea de comandos. Asegrate de que el usuario con el que conectas a la lnea de comandos de MySQL tenga permisos para modificar las cuentas de usuario. Una vez tenemos el prompt de mysql en la lnea de comandos haremos lo siguiente:
mysql> SET PASSWORD FOR 'root'@'localhost' = OLD_PASSWORD('contrasea');

Debemos sustuir "contrasea" por la contrasea que queramos. Con esta sentencia haremos que el usuario root en localhost pueda conectar con el cliente antiguo de MySQL. Lo ideal sera utiilzar la biblioteca mysqli en PHP que es mucho ms completa que la actual mysql y permite aprovechar todas las caractersticas de MySQL 4.1. Pero para instalar esta extensin, por ahora es necesario recompilar PHP ya que no viene en el paquete oficial. Por Alex. Director Tcnico de WebTaller.