Post actualizado el día octubre 29, 2026 by DeiviSanzPlay
Hay una idea que se repite en foros y tutoriales: que para XAMPP cambiar contraseña root MySQL basta con abrir phpMyAdmin y picar en «Cambiar contraseña». Es falso, o al menos incompleto, y por eso tanta gente termina con un phpMyAdmin que devuelve el error #1045 Access denied for user ‘root’@’localhost’ justo después de «arreglarlo». Lo he visto decenas de veces en proyectos locales de WordPress que dejaban de arrancar de golpe.
El mito tiene su lógica: phpMyAdmin muestra una pestaña de usuarios donde puedes editar la contraseña del usuario root. El problema es que XAMPP no es solo MySQL. Hay tres piezas que deben quedar sincronizadas: el servidor MariaDB (XAMPP ya no usa MySQL puro, sino MariaDB), el archivo config.inc.php de phpMyAdmin y, si lo usas, el wp-config.php de tu WordPress. Cambiar una sin tocar las otras rompe la cadena.
Por qué el «truco de phpMyAdmin» falla al cambiar la clave de root
Cuando editas la contraseña desde la interfaz de phpMyAdmin, el servidor la acepta. Pero phpMyAdmin sigue intentando conectar con la clave antigua (vacía por defecto en XAMPP). Resultado: pantalla en blanco, error de acceso o un bucle de login. El servidor está bien; el cliente está desincronizado.
La solución real pasa por editar phpMyAdmin/config.inc.php y ajustar la línea $cfg[‘Servers’][$i][‘password’]. Si además tienes aplicaciones conectadas, cada una guarda su propia copia de las credenciales. Cambiar la contraseña root sin revisar esos archivos es la causa número uno de que un entorno local «deje de funcionar».
Un caso concreto: un compañero cambió la clave root en phpMyAdmin para «asegurar» su XAMPP antes de una demo. Al día siguiente, WordPress no cargaba y el error apuntaba a la base de datos. Perdió una tarde buscando el fallo en plugins cuando el problema estaba en wp-config.php, que seguía con la contraseña vieja. La lección: el cambio de clave no es un paso aislado.
La vía correcta según el propio equipo de XAMPP
La documentación de Apache Friends y los hilos oficiales del foro recomiendan un procedimiento distinto al de phpMyAdmin: usar la consola de MariaDB. Abres la shell de XAMPP, ejecutas mysqladmin -u root password o entras con mysql -u root y lanzas ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘nueva_clave’;. Después actualizas phpMyAdmin manualmente.
Esta ruta es más fiable porque el servidor aplica el cambio directamente y tú controlas cuándo tocas el cliente. Pero ojo: si tu versión de XAMPP es antigua, el comando ALTER USER puede no existir (MariaDB antiguo usaba SET PASSWORD). Esto no funciona igual en todas las versiones, y ahí está la trampa del mito: los tutoriales copian comandos sin comprobar la versión.
El detalle que casi nadie menciona: el usuario anónimo y el host
XAMPP crea por defecto el usuario root accesible solo desde localhost, pero también puede haber entradas para 127.0.0.1 y para el hostname de la máquina. Si cambias la contraseña solo para root@localhost, phpMyAdmin puede seguir conectando por otro host y dar la sensación de que el cambio no se aplicó.
Revisa la tabla mysql.user antes de dar el cambio por cerrado. Verás filas con host distinto. Cada una necesita su propia actualización si quieres coherencia. Es tedioso, pero evita el clásico «cambio la clave, funciona una vez y al reiniciar falla».
Cuándo tiene sentido cambiar la contraseña root en XAMPP (y cuándo no)
XAMPP está pensado para desarrollo local. Si tu instalación nunca sale de tu portátil, cambiar la contraseña root aporta poco: el riesgo real está en exponer el puerto 3306 a la red, no en la clave vacía. Bloquear el acceso externo desde my.ini o el firewall es más efectivo que una contraseña fuerte en un entorno aislado.
Donde sí importa es cuando compartes el equipo, cuando usas XAMPP en una máquina de oficina o cuando pruebas integraciones que luego moverás a un servidor real. En esos casos, la contraseña root débil deja de ser una comodidad y pasa a ser un riesgo. Aun así, no existe una garantía de seguridad total: XAMPP no está endurecido como un servidor de producción.
Si tu objetivo es solo practicar, plantéate crear un usuario específico con permisos limitados en lugar de tocar root. Es más limpio y refleja mejor cómo funcionan los entornos reales, donde root casi nunca se usa para la aplicación.
Comprobación final antes de dar el cambio por bueno
Después de cualquier modificación, prueba tres cosas: entrar por consola con la nueva clave, abrir phpMyAdmin sin errores y arrancar la aplicación que uses (WordPress, Laravel, lo que sea). Si las tres pasan, el cambio está completo. Si una falla, el problema está en el archivo de configuración correspondiente, no en el servidor.
Y una advertencia práctica: guarda una copia del config.inc.php antes de editarlo. Un carácter mal puesto en la línea de password deja phpMyAdmin inaccesible y sin forma de recuperarlo desde la interfaz, lo que obliga a restaurar el archivo a mano. Es un minuto de prevención que ahorra una hora de sudor.
Perfiles verificables: Sitio web
Publicado el 29 de October de 2026. Última revisión: 29 de October de 2026.