A pesar de ser un Warning, de Warning no tiene nada, dado que es un Error en toda regla al no dejarte hacer nada.
Si como yo tienes que actualizar a PHP 5.5 y MYSQL 5.5 en el servidor donde alojas Prestashop te darás cuenta de que no podrás acceder ni al front-end y al back-end. Esto es porque en las nuevas versiones de MYSQL la contraseña pasa a ser más segura, pero ello conlleva cierta incompatibilidad.
ERROR:
Warning: PDO::__construct(): The server requested authentication method unknown to the client [mysql_old_password] in /home/[USUARIO]/public_html/[WEB]/classes/db/DbPDO.php on line 44
Link to database cannot be established: SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client
SOLUCIÓN:
Para solucionar este error, debes crear un nuevo usuario para tu base de datos. Según el hosting que tengas será de una forma u otra. En mi caso el hosting me facilita el CPANEL que en su sección «MySQL Base de Datos» puedo crear usuarios nuevos y asignarlos a una web.
No he probado a cambiar la contraseña de un usuario ya existente, podéis probarlo puesto que imagino que también solucionará el problema.
Una vez creado el nuevo usuario (o cambiada la contraseña del existente) debes cambiar el archivo /config/settings.inc.php y cambiar los datos por los nuevos
define('_DB_NAME_', 'BASEDEDATOS'); define('_DB_USER_', 'USUARIO'); define('_DB_PASSWD_', 'CONTRASEÑA');
Sube tu archivo modificado y actualiza la página. Ahora funcionará perfectamente. Hasta aquí la solución de hoy, espero haber podido ayudar a más gente que como yo ha tenido problemas con este «Warning».
Un saludo!
Iván Ros
Solo quería agradecerte, probé muchos métodos de foros y el tuyo fue el único que funciono. Muchas Gracias 😀
Gracias a tí por leer. Un saludo y a seguir trabajando e investigando.
Muchas gracias, probé la solución de cambiar la contraseña y también funcionó.
Gracias por el aporte
Thank you. This worked for me.