El acceso al servidor MySQL está controlado por usuarios y privilegios. Los usuarios del servidor MySQL no tienen ninguna correspondencia con los usuarios del sistema operativo. Aunque en la práctica es común que algún administrador de MySQL asigne los mismos nombres que los usuarios tienen en el sistema, son mecanismos totalmente independientes y suele ser aconsejable en general.
El usuario administrador del sistema MySQL se llama root. Igual que el superusuario de los sistemas tipo UNIX.
Además del usuario root, las instalaciones nuevas de MySQL incluyen el usuario anónimo, que tiene permisos sobre la base de datos test. Si queremos, también podemos restringirlo asignándole una contraseña. El usuario anónimo de MySQL se representa por una cadena vacía. Vemos otra forma de asignar contraseñas a un usuario, desde el cliente de mysql y como usuario root:
mysql> set password for ''@'localhost' = password('nuevapasswd');
La administración de privilegios y usuarios en MySQL se realiza a través de las sentencias:
• GRANT. Otorga privilegios a un usuario, en caso de no existir, se creará el usuario.
• REVOKE. Elimina los privilegios de un usuario existente.
• SET PASSWORD. Asigna una contraseña.
• DROP USER. Elimina un usuario.