PhpMyAdmin: error 1045 Access denied for user root@localhost
Este truco está pensado para quienes tienen un problema al iniciar PhpMyAdmin. Por ejemplo, con WAMP Server o EasyPHP. Uno de los mensajes más habituales de error es "mysqli::real_connect(): (hy000/1045): access denied for user 'root'@'localhost' (using password: yes) o (using password: no). A continuación, vemos cómo solucionarlo.
¿Cuál es el error #1045 en PhpMyAdmin?
Los mensajes de error que aparecen pueden ser:
-
#1045- Access denied for user 'root'@localhost'
-
mysqli::real_connect(): (hy000/1045): access denied for user 'root'@'localhost' (using password: yes)
-
mysqli::real_connect(): (hy000/1045): access denied for user 'root'@'localhost' (using password: no)
Todos ellos comparten la misma solución.
¿Cuál es la solución?
Para solucionar esto es necesario efectuar algunas manipulaciones después de la instalación. Los pasos a seguir son:
- Abre la consola MySql.
- Presiona Enter y escribe el comando mysql>.
- Es útil comenzar por ingresar una nueva contraseña mediante este comando:
SET PASSWORD FOR root@localhost=PASSWORD(' micontraseña ');
- Es recomendable recompensar los derechos de usuario mediante el comando siguiente:
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY ' micontraseña ' WITH GRANT OPTION;
- Es necesario ingresar los nombres de los host y la cuenta de usuario por defecto con la contraseña en el archivo 'php.ini' en el nivel siguiente:
; Default user for mysql_connect() (doesn't apply in safe mode). mysqli.default_user ='root' ; Default password for mysqli_connect() (doesn't apply in safe mode). ; Note that this is generally a *bad* idea to store passwords in this file. ; *Any* user with PHP access can run 'echo get_cfg_var("mysqli.default_pw") ; and reveal this password! And of course, any users with read access to this ; file will be able to reveal the password as well. mysqli.default_pw ='micontraseña'
Sólo queda ingresar los nombres de los hosts y de la cuenta de usuario por defecto con la contraseña en el archivo 'config.inc.php' con las líneas siguientes:
$cfg['Servers'][$i]['host']= 'localhost'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password']= 'micontraseña';
Después de no haber podido abrir correctamente la página localhost vas a recibir la agradable sorpresa de poder conectarte a PhpMyAdmin sin el error mencionado.