Table of Contents
Cómo crear y eliminar un usuario en MySQL paso a paso
En este tutorial vamos a ver cómo crear y eliminar un usuario en MySQL, asignándole una contraseña y permisos sobre una base de datos específica. Este proceso es fundamental para la gestión de la seguridad en bases de datos, ya que nos permite otorgar accesos diferenciados a distintos usuarios.
En nuestro ejemplo, trabajaremos con la base de datos tiendaonline, crearemos un usuario llamado Manolo con contraseña 1234 y veremos cómo darle permisos o eliminarlo en caso necesario.
Paso 1: Seleccionar la base de datos
Antes de comenzar, nos aseguramos de usar la base de datos tiendaonline:
USE tiendaonline;
Paso 2: Verificar si el usuario existe
Podemos comprobar si ya existe un usuario con el nombre Manolo
:
SELECT user FROM mysql.user WHERE user = 'Manolo';
Paso 3: Crear el usuario en MySQL
Creamos el usuario Manolo con contraseña 1234
y host %
(lo que significa que puede conectarse desde cualquier dirección IP):
CREATE USER 'Manolo'@'%' IDENTIFIED BY '1234';

Paso 4: Ver los usuarios creados
Para comprobar todos los usuarios en MySQL ejecutamos:
SELECT user FROM mysql.user;



Paso 5: Revisar privilegios del usuario
Podemos consultar qué permisos tiene actualmente:
SHOW GRANTS FOR 'Manolo'@'%';
Al inicio, el usuario no tendrá privilegios.
Paso 6: Asignar permisos al usuario
Damos permisos completos sobre la base de datos tiendaonline
al usuario Manolo
:
GRANT ALL PRIVILEGES ON tiendaonline.* TO 'Manolo'@'%';
Con esto, Manolo podrá:
✅ Crear, modificar y eliminar tablas.
✅ Insertar, consultar y eliminar registros.
✅ Gestionar vistas y otros objetos dentro de la base de datos tiendaonline
.
Paso 7: Eliminar un usuario en MySQL
Si queremos eliminar el usuario, usamos:
DROP USER IF EXISTS 'Manolo'@'%';
Esto eliminará al usuario y sus privilegios.
Podemos comprobarlo nuevamente listando los usuarios:
SELECT user FROM mysql.user;









Hemos aprendido a:
- Crear un usuario en MySQL.
- Asignarle contraseña y definir su host de conexión.
- Otorgar privilegios sobre una base de datos.
- Eliminar el usuario cuando ya no se necesita.
Este procedimiento es básico para garantizar la seguridad y organización en un entorno multiusuario.
Preguntas frecuentes (FAQ)
1. ¿Qué significa el host %
en MySQL?
El símbolo %
indica que el usuario puede conectarse desde cualquier host o dirección IP. Si quieres restringir el acceso, puedes usar una IP o localhost
.
2. ¿Puedo darle permisos solo de lectura al usuario?
Sí. En lugar de GRANT ALL PRIVILEGES
, puedes usar:
GRANT SELECT ON tiendaonline.* TO 'Manolo'@'%';
De esta manera, solo podrá consultar datos, no modificarlos.
3. ¿Qué pasa si no uso IF EXISTS
al borrar un usuario?
Si el usuario no existe, MySQL generará un error. Por eso es recomendable usar DROP USER IF EXISTS
.
4. ¿Cuál es la diferencia entre DROP USER
y REVOKE
?
DROP USER
: elimina completamente al usuario.REVOKE
: solo quita permisos, pero el usuario sigue existiendo.
5. ¿Es seguro usar contraseñas simples como '1234'?
No. En entornos de producción siempre se deben usar contraseñas seguras y encriptadas, para evitar accesos no autorizados.
Te puede interesar:
Seguir leyendo: