06.09.2014 Views

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

Bases de datos: Software libre - Universitat Oberta de Catalunya

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

© FUOC • 71Z799014MO 39 <strong>Bases</strong> <strong>de</strong> <strong>datos</strong> en MySQL<br />

usuarios <strong>de</strong>l sistema operativo. Aunque en la práctica es común que algún administrador<br />

<strong>de</strong> MySQL asigne los mismos nombres que los usuarios tienen en<br />

el sistema, son mecanismos totalmente in<strong>de</strong>pendientes y suele ser aconsejable<br />

en general.<br />

El usuario administrador <strong>de</strong>l sistema MySQL se llama root. Igual que el superusuario<br />

<strong>de</strong> los sistemas tipo UNIX.<br />

A<strong>de</strong>más <strong>de</strong>l usuario root, las instalaciones nuevas <strong>de</strong> MySQL incluyen el usuario<br />

anónimo, que tiene permisos sobre la base <strong>de</strong> <strong>datos</strong> test. Si queremos, también<br />

po<strong>de</strong>mos restringirlo asignándole una contraseña. El usuario anónimo <strong>de</strong><br />

MySQL se representa por una ca<strong>de</strong>na vacía. Vemos otra forma <strong>de</strong> asignar contraseñas<br />

a un usuario, <strong>de</strong>s<strong>de</strong> el cliente <strong>de</strong> mysql y como usuario root:<br />

mysql> set password for ''@'localhost' = password(’nuevapasswd’);<br />

La administración <strong>de</strong> privilegios y usuarios en MySQL se realiza a través <strong>de</strong> las<br />

sentencias:<br />

• GRANT. Otorga privilegios a un usuario, en caso <strong>de</strong> no existir, se creará el<br />

usuario.<br />

• REVOKE. Elimina los privilegios <strong>de</strong> un usuario existente.<br />

• SET PASSWORD. Asigna una contraseña.<br />

• DROP USER. Elimina un usuario.<br />

5.2.1. La sentencia GRANT<br />

La sintaxis simplificada <strong>de</strong> grant consta <strong>de</strong> tres secciones. No pue<strong>de</strong> omitirse<br />

ninguna, y es importante el or<strong>de</strong>n <strong>de</strong> las mismas:<br />

• grant lista <strong>de</strong> privilegios<br />

• on base <strong>de</strong> <strong>datos</strong>.tabla<br />

• to usuario<br />

Ejemplo<br />

Creación <strong>de</strong> un nuevo usuario al que se otorga algunos privilegios<br />

mysql> grant update, insert, select<br />

-> on <strong>de</strong>mo.precios<br />

-> to visitante@localhost ;<br />

En la primera línea se especifican los privilegios que serán otorgados, en este caso se permite<br />

actualizar (update), insertar (insert) y consultar (select). La segunda línea especifica que los<br />

privilegios se aplican a la tabla precios <strong>de</strong> la base <strong>de</strong> <strong>datos</strong> <strong>de</strong>mo. En la última línea se encuentra<br />

el nombre <strong>de</strong>l usuario y el equipo <strong>de</strong>s<strong>de</strong> el que se va a permitir la conexión.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!