martes, 31 de mayo de 2011

MySQLi con PHP 5

Cuando de repente estamos echando código y queremos ya probar nuestro sitio web con código PHP y MySQL en el servidor final y nos sale la siguiente belleza.......

mysql_connect() [function.mysql-connect]: Premature end of data (mysqlnd_wireprotocol.c:554)



Error en el sistema: Tuesday 31st of May 2011 03:30:00 AM mysql_connect() [function.mysql-connect]: OK packet 1 bytes shorter than expected


Error en el sistema: Tuesday 31st of May 2011 03:30:00 AM mysql_connect() [function.mysql-connect]: mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password'). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file
 
 
Pensamos que estamos haciendo las cosas mal, pero bueno no es así y en mi particular lo desconocia. MySQL (Oracle) saco en sus versiones actuales de servidor, una nueva configuración de contraseñas para accesos a la base de datos denominada MySQLi (MySQL Integrated), esto nos permite ahora tener conexiones mas seguras a nuestras base de datos MySQL, ya que la contraseña en realidad es un hash de 41 caracteres donde esta encriptada nuestra contraseña, pero el gran detalle de esto es que la mayoría no somos dueños de los servidores donde publicamos nuestros desarrollos y por ende nos vemos afectados por eso... Una solución es ejecutar query's como si fuesemos administrador que nos convierta la contraseña o existen diversos métodos los cuales intente comprobar de manera poco fructuosa...
 
Les recomiendo que tengan esto pendiente y las personas que manejen clientes para administrar un sitio web actualicen el registro de usuario para que la contraseña se guarde de la nueva manera automáticamente :)

No hay comentarios:

Publicar un comentario

¿Cansado de usar la llave para abrir tu puerta? Kwikset Kevo Lock marca la diferencia

Kwikset Kevo Bluetooth, un dispositivo capaz de permitir abrir la puerta de tu casa solo con un dedo. La tecnología todos los días nos dej...