5.2.1. La sentencia GRANT

La sintaxis simplificada de grant consta de tres secciones. No puede omitirse ninguna, y es importante el orden de las mismas:

•    grant lista de privilegios
•    on base de datos.tabla
•    to usuario

Ejemplo

Creación de un nuevo usuario al que se otorga algunos privilegios

mysql> grant update, insert, select
-> on demo.precios
-> to visitante@localhost;

En la primera línea se especifican los privilegios que serán otorgados, en este caso se permite actualizar (update), insertar (insert) y consultar (select). La segunda línea especifica que los privilegios se aplican a la tabla precios de la base de datos demo. En la última línea se encuentra el nombre del usuario y el equipo desde el que se va a permitir la conexión.

El comando grant crea la cuenta si no existe y, si existe, agrega los privilegios especificados. Es posible asignar una contraseña a la cuenta al mismo tiempo que se crea y se le otorgan privilegios:

mysql> grant update, insert, select
-> on demo.precios
-> to visitante@localhost identified by ´nuevapasswd´;

En la misma sentencia es posible también otorgar permisos a más de un usuario y asignarles, o no, contraseña:

mysql> grant update, insert, select
-> on demo.precios
-> to visitante@localhost,
-> yo@localhost identified by ´nuevapasswd´,
-> tu@equipo.remoto.com;