Cómo crear un usuario administrador de WordPress desde la base de datos (phpMyAdmin)
¿Te has quedado fuera de tu propio WordPress? Es una situación más común de lo que parece y, afortunadamente, tiene solución incluso en los casos más extremos. Cuando olvidas la contraseña, pierdes el correo electrónico asociado o algún plugin conflictivo te bloquea el acceso al panel de administración, la vía de escape definitiva es crear un usuario administrador de WordPress desde la base de datos.
Este proceso, aunque suena técnico, es bastante sencillo si sigues los pasos al pie de la letra. Utilizaremos phpMyAdmin, la herramienta estándar que ofrecen la mayoría de los paneles de control de hosting para gestionar bases de datos MySQL. No necesitas ser un programador experto, solo tener acceso a tu panel de hosting y un poco de paciencia.
En esta guía extensa y paso a paso, te explicaré el método más seguro y directo para recuperar el acceso WordPress creando un usuario administrador desde cero o modificando uno existente. Vamos a ello.
¿Por qué necesitarías crear un usuario admin desde phpMyAdmin?
Antes de ensuciarnos las manos con código SQL, es importante entender cuándo es necesario recurrir a este método. No es el primer paso que debes dar, pero sí el más efectivo cuando fallan los demás. Estas son las situaciones típicas:
- Olvidaste tu contraseña y el enlace de "¿Has olvidado tu contraseña?" no llega a tu correo (a veces pasa por problemas de configuración del servidor de correo).
- Perdiste el acceso a tu correo electrónico asociado a la cuenta de administrador.
- Un plugin o tema defectuoso te ha bloqueado el acceso al panel, mostrando un error fatal que no te deja ni siquiera intentar iniciar sesión.
- Tu sitio fue hackeado y el atacante cambió las credenciales del administrador.
- Quieres crear una nueva cuenta de administrador para un desarrollador o un nuevo miembro del equipo, y prefieres hacerlo directamente desde la base de datos por rapidez.
Cuando el método de "correo electrónico olvidado" falla, crear usuario admin WordPress desde la base de datos es el comodín definitivo. Es como tener una llave maestra para tu propio castillo digital.
Preparación: Lo que necesitas antes de empezar
Para llevar a cabo este proceso necesitarás dos cosas fundamentales:
- Acceso a tu panel de control de hosting. Normalmente es cPanel, Plesk, o el panel propietario de tu proveedor. Si tu hosting usa Syspanel, recuerda que el puerto de acceso es el 2106 (ejemplo:
https://tu-dominio.com:2106). El acceso a phpMyAdmin suele estar en la sección de "Bases de Datos" o "Bases de Datos MySQL". - El nombre de tu base de datos y el usuario de la base de datos. No debes confundirlo con el usuario administrador de WordPress. El usuario de la base de datos es el que se define al crearla en el hosting. Puedes encontrar estos datos en la misma sección de "Bases de Datos" de tu panel.
Una vez que tengas estos datos a mano, abre phpMyAdmin en tu navegador. Verás una interfaz con una lista de bases de datos en el lado izquierdo. Haz clic en el nombre de la base de datos de tu sitio WordPress.
[WARNING] Asegúrate de elegir la base de datos correcta. Si tienes varios sitios web, elegir la equivocada podría causar conflictos. Verifica el nombre con los datos de configuración de tu archivo
wp-config.phpsi es necesario.
Método 1: Crear un usuario administrador 100% nuevo (El más seguro)
Este es el método más recomendado porque no altera los usuarios existentes. Si algo sale mal, siempre podrás volver a intentarlo. Crearemos un usuario completamente nuevo con permisos de administrador.
Paso 1: Accede a la tabla "wp_users"
Dentro de tu base de datos, verás una lista de tablas. Todas comienzan con el prefijo wp_ (aunque a veces puede ser otro, como miwp_). Busca la tabla llamada wp_users y haz clic en el botón "Examinar" (o "Browse" en inglés) que está en la misma fila.
Aquí verás una lista de todos los usuarios registrados en tu sitio. Ahora, en la parte superior de la pantalla, haz clic en la pestaña "SQL".
Paso 2: Inserta el nuevo usuario con SQL
Se abrirá un cuadro de texto donde podrás escribir consultas SQL. Vamos a insertar un nuevo registro en la tabla wp_users. Copia y pega el siguiente código, pero cámbialo con tus datos:
INSERT INTO `wp_users` (`user_login`, `user_pass`, `user_email`, `user_nicename`, `user_registered`, `user_status`)
VALUES ('nuevo_admin', 'AQUI_TU_CONTRASEÑA_EN_MD5', 'tu_correo@ejemplo.com', 'nuevo_admin', NOW(), 0);
Desglosando el código (es más fácil de lo que parece):
user_login: El nombre de usuario que usarás para iniciar sesión. Cámbialo por uno que te guste (ej.admin_emergencia).user_pass: IMPORTANTE Este campo no acepta una contraseña en texto plano. Debe estar encriptada en formato MD5. Puedes generar una fácilmente buscando "generador MD5" en Google, o usar la funciónMD5()de MySQL. Te recomiendo que primero generes el hash de tu contraseña deseada y lo pegues aquí entre comillas simples. Por ejemplo, si tu contraseña esMiPassSegura2024!, su hash MD5 sería algo comoa8f5f167b44fcf4c.... (No te preocupes, más abajo te doy un truco para cambiarla después).user_email: Un correo electrónico válido donde puedas recibir notificaciones.user_nicename: Es un nombre más "amigable" para la URL del autor. Normalmente se usa el mismo que eluser_login.user_registered: UsamosNOW()para que ponga la fecha y hora actual automáticamente.user_status: Lo dejamos en0, que significa que la cuenta está activa.
Haz clic en el botón "Continuar" (o "Go") en la parte inferior. Si todo ha ido bien, verás un mensaje de éxito: "1 fila insertada".
[TIP] Para generar el hash MD5, puedes usar la función de MySQL. En lugar de pegar un hash, escribe:
MD5('TuContraseñaReal'). Así, el código se vería así:VALUES ('nuevo_admin', MD5('MiPassSegura2024!'), ...). Esto lo hace más fácil y menos propenso a errores de copiado.
Paso 3: Vincula el usuario con el rol de administrador
Ahora tenemos un usuario, pero WordPress no sabe que debe ser administrador. El rol se define en una tabla diferente, llamada wp_usermeta.
Haz clic de nuevo en la pestaña "SQL" (asegúrate de que la base de datos sigue seleccionada) y pega el siguiente código:
INSERT INTO `wp_usermeta` (`user_id`, `meta_key`, `meta_value`)
VALUES ('ID_DEL_USUARIO', 'wp_capabilities', 'a:1:{s:13:"administrator";b:1;}');
¿Qué significa esto?
user_id: Este es el número de identificación del usuario que acabas de crear. Necesitas saberlo. Si es la primera vez que insertas, seguramente sea1o2. Para asegurarte, puedes ir a la tablawp_usersy examinar el campoIDdel usuario que creaste.meta_key: Usamoswp_capabilities. Este es el nombre de la clave que WordPress busca para saber qué rol tiene el usuario.meta_value: Este es el valor serializado. La cadenaa:1:{s:13:"administrator";b:1;}es la forma en que WordPress guarda el rol. Es una serie de instrucciones que le dice a WordPress: "Este usuario es administrador".
Reemplaza ID_DEL_USUARIO con el número correcto y haz clic en "Continuar".
¡Listo! Ya tienes un usuario administrador funcional. Ahora ve a tu-sitio.com/wp-admin e inicia sesión con el nombre de usuario y la contraseña que definiste.
Método 2: Convertir un usuario existente en Administrador (El más rápido)
Este método es perfecto si ya tienes un usuario creado (por ejemplo, un autor o editor) y quieres darle permisos totales. También es útil si recuerdas tu nombre de usuario pero no la contraseña.
Paso 1: Encuentra el ID del usuario existente
Ve a la tabla wp_users y haz clic en "Examinar". Busca tu usuario en la lista y anota el número que aparece en la columna ID. Por ejemplo, si tu usuario es juanperez y su ID es 4, lo anotamos.
Paso 2: Actualiza la contraseña (si es necesario)
Si lo que necesitas es cambiar la contraseña, ve a la pestaña "SQL" y ejecuta:
UPDATE `wp_users` SET `user_pass` = MD5('TuNuevaContraseña') WHERE `ID` = 4;
Recuerda cambiar TuNuevaContraseña por la que quieras y el número 4 por el ID real de tu usuario.
Paso 3: Asigna el rol de administrador
Ahora, ve a la tabla wp_usermeta y haz clic en "Examinar" para ver si tu usuario ya tiene alguna entrada. Si no la tiene, ve a la pestaña "SQL" y ejecuta la misma inserción que en el método anterior, pero con el ID correcto:
INSERT INTO `wp_usermeta` (`user_id`, `meta_key`, `meta_value`)
VALUES ('4', 'wp_capabilities', 'a:1:{s:13:"administrator";b:1;}');
Si tu usuario ya tiene una entrada en wp_usermeta con la clave wp_capabilities, tendrás que actualizarla en lugar de insertarla. Para ello, ejecuta:
UPDATE `wp_usermeta` SET `meta_value` = 'a:1:{s:13:"administrator";b:1;}' WHERE `user_id` = 4 AND `meta_key` = 'wp_capabilities';
Y con eso, tu usuario existente ahora tiene poderes de administrador.
[INFO] Si el prefijo de tus tablas no es
wp_, deberás cambiarlo en todas las consultas SQL. Puedes ver el prefijo real mirando el nombre de las tablas en el panel izquierdo de phpMyAdmin.
Solución de problemas comunes al usar phpMyAdmin
A veces las cosas no salen a la primera. Aquí tienes los problemas más habituales y cómo solucionarlos:
- Error de "Tabla no existe": Esto significa que el prefijo de tus tablas es diferente. Revisa el nombre real de las tablas en la lista y ajusta las consultas SQL (ej.
mi_prefijo_users). - Error de "Clave primaria duplicada": Al insertar un nuevo usuario, si usaste un
IDque ya existe, dará error. Asegúrate de que elIDque estás usando es único. Puedes omitir el campoIDen la consultaINSERTy se asignará automáticamente. - No puedo iniciar sesión después de crear el usuario: Asegúrate de haber ejecutado ambas consultas (la de
wp_usersy la dewp_usermeta). Sin la segunda, WordPress no sabe qué rol darle al usuario y lo tratará como un usuario sin permisos. - La contraseña no funciona: Si usaste el método directo de hash MD5, verifica que lo copiaste correctamente. Te recomiendo usar la función
MD5('tu_contraseña')directamente en la consulta SQL para evitar errores de copiado.
Consejos finales y buenas prácticas
Crear un usuario administrador desde la base de datos es una herramienta poderosa, pero conlleva una gran responsabilidad. Aquí van mis últimos consejos:
- Elimina el usuario temporal: Una vez que hayas recuperado el acceso, inicia sesión con tu nuevo usuario administrador y elimina cualquier otro usuario temporal que hayas creado para solucionar el problema. Esto mantiene tu sitio limpio y seguro.
- Cambia todas tus contraseñas: Si el motivo fue un hackeo, cambia la contraseña de la base de datos, la del panel de hosting y la de todos los usuarios de WordPress.
- Actualiza todo: Asegúrate de tener WordPress, tus plugins y temas actualizados para evitar futuros problemas de seguridad.
- Haz copias de seguridad: Este tipo de manipulaciones, aunque son seguras, siempre conllevan un pequeño riesgo. Realiza una copia de seguridad completa de tu base de datos antes de empezar. En phpMyAdmin puedes hacerlo fácilmente con la pestaña "Exportar".
Recuerda que este método es una solución de emergencia. La próxima vez que tengas problemas de acceso, intenta primero el método de restablecimiento de contraseña por correo electrónico. Pero si falla, ya sabes que tienes una opción infalible con phpMyAdmin para recuperar el acceso WordPress.
Espero que esta guía te haya sido de gran ayuda. No dudes en leer nuestros otros artículos sobre gestión de WordPress y SEO para seguir mejorando tu sitio web. ¡Nos vemos en el siguiente instructivo!
