Skip to content

Todo para WordPress, el desarrollo web — y mucho más

🔑 Cómo cambiar tu contraseña de WordPress mediante phpMyAdmin: una guía paso a paso

🔑 Cómo cambiar tu contraseña de WordPress mediante phpMyAdmin: una guía paso a paso

Acceso al panel de administración de WordPress perdido. El correo electrónico no funciona y el mensaje de restablecimiento de contraseña nunca llega. El panel de control del sitio está tras un muro infranqueable y cada minuto de inactividad perjudica a sus visitantes y a su reputación.

¿Le suena familiar? No está solo. Fallos de correo en el alojamiento, pérdida de acceso a la cuenta de correo del propietario, hackeo de la cuenta: las causas son innumerables, pero el resultado siempre es el mismo. El escenario estándar de «Olvidé mi contraseña» es inútil.

Afortunadamente, existe una solución alternativa. Solo necesita acceder a la base de datos del sitio a través de phpMyAdmin y reemplazar el hash de la contraseña manualmente. Esto es más fiable que esperar un correo y toma exactamente dos minutos. Cubriremos todos los métodos funcionales, desde el clic hasta la línea de comandos.

💡 Resumen rápido:

  • Ingrese a phpMyAdmin a través de cPanel o el panel de su alojamiento
  • Encuentre la tabla wp_users y edite el campo user_pass usando la función MD5
  • Para mayor rapidez, use una consulta SQL de una sola línea
  • Con acceso SSH, restablezca la contraseña mediante WP-CLI con un solo comando

Cuando el restablecimiento de contraseña estándar es impotente

El mecanismo estándar de WordPress es simple: en la página de inicio de sesión hace clic en «¿Olvidó su contraseña?», ingresa su nombre de usuario o correo electrónico y recibe un enlace de restablecimiento. Funciona perfectamente siempre que el correo electrónico esté operativo.

Los problemas comienzan cuando:

  • No tiene acceso a la cuenta de correo electrónico vinculada a la cuenta de usuario (el correo del administrador cambió, el buzón fue abandonado);
  • El alojamiento no envía correos del sistema: la función mail() está desactivada, SMTP no está configurado, el correo va a spam o se pierde;
  • El sitio fue hackeado y el atacante cambió tanto el correo electrónico como la contraseña del administrador.

En todos estos casos, el único camino garantizado es el acceso directo a la base de datos MySQL. phpMyAdmin está disponible en prácticamente todos los alojamientos: viene de serie con cPanel, DirectAdmin, Plesk e ISPmanager. No es necesario instalar herramientas adicionales.

Método 1: edición manual a través de la interfaz de phpMyAdmin

El método más visual. Adecuado si trabaja con la base de datos por primera vez y quiere ver exactamente qué está cambiando.

Paso 1. Ingrese a phpMyAdmin. Abra el panel de control de su alojamiento (cPanel o similar), busque la sección «Bases de datos» y haga clic en el icono de phpMyAdmin.

Paso 2. Seleccione la base de datos de su sitio. En la columna izquierda está la lista de bases de datos. Elija la que pertenece a su sitio (si no recuerda el nombre, revise wp-config.php en la raíz del sitio, el parámetro DB_NAME).

Paso 3. Abra la tabla wp_users. En la lista de tablas, busque la fila wp_users (el prefijo puede variar: wp_ es el predeterminado, pero podría ser wpxy_, site_ o cualquier otro definido durante la instalación). Haga clic en «Examinar».

Paso 4. Haga clic en «Editar» junto al usuario deseado. Se abrirá un formulario con todos los campos de la cuenta.

Paso 5. Reemplace la contraseña. En el campo user_pass, elimine el hash antiguo e ingrese su nueva contraseña. En el menú desplegable «Función», seleccione MD5. Haga clic en «Continuar» al final del formulario.

Editando el campo user_pass con la función MD5 seleccionada en phpMyAdmin

Listo. La contraseña se guarda en la base de datos como un hash MD5. En el primer inicio de sesión, WordPress reconocerá el formato obsoleto, rehasheará automáticamente la contraseña con un algoritmo moderno (PasswordHash con sal y 256 iteraciones) y escribirá la versión reforzada en la base de datos. No se requieren acciones adicionales; el mecanismo de compatibilidad hacia atrás funciona desde la versión 2.5.

Método 2: restablecimiento rápido mediante consulta SQL

El mismo resultado, pero en una sola acción. Conveniente cuando necesita cambiar la contraseña sin navegar por filas y formularios.

Ingrese a phpMyAdmin, seleccione la base de datos de su sitio y vaya a la pestaña SQL. Pegue la consulta:

1UPDATE `wp_users` SET `user_pass` = MD5('your-new-password') WHERE `user_login` = 'your-username';

Reemplace your-new-password con la contraseña real y your-username con el nombre de usuario (el campo user_login en la tabla). Si el prefijo de la tabla difiere de wp_, corríjalo en la consulta. Haga clic en «Continuar».

La consulta se ejecutará instantáneamente. La mecánica es la misma: MD5 en la base de datos, actualización automática del hash en el primer inicio de sesión.

Método 3: WP-CLI para quienes se sienten cómodos con la terminal

Si WP-CLI está instalado en el servidor (y en un VPS o servidor dedicado adecuado casi con certeza lo está), la contraseña se cambia con un comando sin ingresar a phpMyAdmin:

1wp user update your-login --user_pass=new-password

WP-CLI llamará a wp_set_password() por sí mismo y la contraseña se escribirá inmediatamente con el hash moderno correcto, sin el paso intermedio de MD5. El comando no requiere especificar el prefijo de la tabla, no depende de la versión de PHP y no modifica otros campos del usuario.

Si necesita restablecer la contraseña del administrador pero no recuerda el nombre de usuario, obtenga la lista de usuarios:

1wp user list --role=administrator

Luego pase el nombre de usuario necesario al comando wp user update.

Método 4: restablecimiento de emergencia mediante el functions.php del tema

La opción más «de emergencia» para cuando no tiene acceso al panel de alojamiento pero puede editar los archivos del sitio mediante FTP o a través del administrador de archivos del alojamiento.

Agregue el siguiente código a functions.php del tema activo **antes de la etiqueta de cierre ?> (o al final del archivo si no hay etiqueta):

1wp_set_password('new-password', 1);

El número 1 es el ID de usuario (generalmente 1 para el administrador creado durante la instalación). Si el administrador tiene un ID diferente, reemplace el número.

Guarde el archivo y abra cualquier página del sitio UNA VEZ. La contraseña se establecerá. Inmediatamente después, **elimine la línea de **functions.php; si la deja, la contraseña se restablecerá en cada carga de página.

Este método es rudimentario, pero ayuda cuando los demás no están disponibles.

Este video de 4 minutos muestra el camino completo: desde el inicio de sesión en cPanel hasta guardar la nueva contraseña en la tabla wp_users. Las ubicaciones de los botones y los menús desplegables son claramente visibles; si la interfaz de su alojamiento es diferente, la lógica general sigue siendo la misma.

⁉️🤔 Preguntas frecuentes

¿Por qué específicamente MD5, si este algoritmo se considera inseguro?

MD5 en phpMyAdmin es la única función hash disponible que WordPress entiende cuando se inserta directamente en la base de datos. Sin embargo, el hash MD5 solo se almacenará hasta el primer inicio de sesión: el núcleo del CMS verifica la contraseña, detecta el formato obsoleto y lo reemplaza de forma transparente por PasswordHash, un algoritmo moderno con sal y 256 iteraciones. El hash final en la base de datos es robusto. MD5 aquí es un puente de transporte, no un almacenamiento permanente.

¿Qué debo hacer si el prefijo de la tabla no es wp_ y no sé cuál es?

Abra wp-config.php en la raíz del sitio y busque la línea $table_prefix. El valor de esta variable es el prefijo. Si no tiene acceso a los archivos, recorra la lista de tablas en phpMyAdmin: users siempre termina en _users, y el prefijo es visible a partir de las tablas vecinas (_posts, _options, etc.).

¿Puedo prescindir de phpMyAdmin si no quiero entrar en la base de datos?

Sí, use WP-CLI (método 3) o restablezca mediante functions.php (método 4). WP-CLI requiere acceso SSH al servidor, mientras que functions.php requiere FTP o el administrador de archivos del alojamiento. Si no tiene ninguno, phpMyAdmin sigue siendo la única opción, pero cumple su función de manera fiable.

¿Funcionará este método si el sitio corre en PHP 8+ y una versión reciente de WordPress?

Sí. Todos los métodos descritos funcionan en las versiones actuales de WordPress y PHP. El mecanismo de compatibilidad hacia atrás para hashes MD5 no se ha eliminado del núcleo desde la versión 2.5, ya que demasiados sitios actualizan por esta vía. La función MD5() de MySQL tampoco ha desaparecido.

Cambié la contraseña, pero aún no puedo iniciar sesión. ¿Qué está mal?

Revise tres cosas. Primero: el campo user_login puede haber quedado con espacios adicionales o errores tipográficos; el nombre de usuario distingue mayúsculas de minúsculas según la distribución del teclado. Segundo: el sitio puede haber almacenado en caché la sesión anterior, así que abra la página de inicio de sesión en modo incógnito. Tercero: si hay un plugin de seguridad instalado (Wordfence, Solid Security), puede estar bloqueando el inicio de sesión por IP tras varios intentos fallidos. Espere 15 minutos o restablezca el bloqueo a través de la misma base de datos en la tabla del plugin.

Perder la contraseña no es una catástrofe si conoce la solución alternativa

phpMyAdmin parece intimidante para quienes nunca han mirado dentro de una base de datos. Pero cambiar la contraseña de WordPress a través de él es una operación de tres clics y un menú desplegable. Una vez que la domine, nunca más volverá a quedarse bloqueado frente a la pantalla de inicio de sesión.

Si su sitio está en un alojamiento convencional, su herramienta es phpMyAdmin (método 1 o 2). Si tiene un VPS o servidor dedicado con acceso a consola, WP-CLI (método 3) lo resolverá más rápido. E incluso cuando el panel de alojamiento no esté disponible y solo tenga FTP, functions.php (método 4) salvará la situación. Elija el camino que esté disponible ahora mismo y recupere el control de su sitio en dos minutos.