Cómo crear un nuevo usuario de MySQL y otorgar derechos de acceso a través de la línea de comandos

Paso 4: Cambiar o revocar los derechos de acceso de un usuario de MySQL

Si desea cambiar o revocar los permisos de un usuario de MySQL, puede usar el comando REVOKE. El formato general de este comando es el siguiente:

REVOKE privileges ON database.table FROM ‘username»host’;

Aquí, debe reemplazar el privileges, database, table, username y host con los valores correspondientes. privileges es el derecho de acceso que desea cambiar o revocar del usuario. Puede utilizar derechos de acceso específicos o globales como se ha descrito anteriormente. database, table, username y host son los nombres de bases de datos, tablas, usuarios y hosts a los que se han concedido derechos de acceso anteriormente.

Por ejemplo, si desea revocar los permisos de DELETE de un usuario user1 en todas las tablas de db1 base de datos, puede utilizar el siguiente comando:

REVOKE DELETE ON db1.* FROM 'user1''%';

Si el comando se ejecuta correctamente, verá un mensaje como este:

Query OK, 0 rows affected (0.01 sec)

Puede comprobar si los derechos de acceso se han revocado correctamente utilizando el comando SHOW GRANTS:

SHOW GRANTS FOR 'user1''%';

Este comando mostrará todos los derechos de acceso que posee el usuario user1. Deberías ver resultados como este:

+--------------------------------------------------------------+
| Grants for user1% |
+--------------------------------------------------------------+
| GRANT USAGE ON *.* TO `user1``%` |
| GRANT SELECT, INSERT, UPDATE ON `db1`.* TO `user1``%` |
+--------------------------------------------------------------+
2 rows in set (0.00 sec)

Aquí puede ver que se han revocado DELETE derechos de acceso de user1 usuarios en todas las tablas de db1 base de datos.

Paso 5: Eliminar usuarios de MySQL

Si desea eliminar un usuario de MySQL, puede usar el comando DROP USER. El formato general de este comando es el siguiente:

DROP USER 'username''host';

Aquí, deberá reemplazar el username y el host con el nombre de usuario y el host que desea eliminar. Este comando elimina el usuario y todos los permisos que tiene.

Por ejemplo, si desea eliminar un usuario user1, puede utilizar el siguiente comando:

DROP USER 'user1''%';

Si el comando se ejecuta correctamente, verá un mensaje como este:

Query OK, 0 rows affected (0.01 sec)

Puede comprobar si un usuario se ha eliminado correctamente utilizando el comando SELECT de la tabla mysql.user:

SELECT User, Host FROM mysql.user;

Este comando mostrará todos los usuarios existentes de MySQL y sus hosts. Deberías ver resultados como este:

+------------------+-----------+
| User | Host |
+------------------+-----------+
| root | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
+------------------+-----------+
3 rows in set (0.00 sec)

Aquí, puede ver que user1 usuario ha sido eliminado de la lista de usuarios de MySQL.

Conclusión

MySQL tiene varios comandos útiles para administrar usuarios y derechos de acceso. Con estos comandos, puede organizar su base de datos MySQL mejor y de forma más segura.

Espero que este artículo te resulte útil. Gracias por leer.

Artículos más recientes