5
¿Cómo crear un nuevo usuario? En la parte 1 del tutorial de MySQL, hicimos todas las ediciones como usuario root, con acceso completo a todas las bases de datos. Como sea, en este caso hay mas restricciones que pueden ser requeridas, hay formas de crear usuarios con persmisos personalizados. Vamos empezando por crear un usuario nuevo desde la consola de MySQL: CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'tu_contrasena'; Lamentablemente, a este punto el nuevo usuario no tiene permisos para hacer algo con las bases de datos. Por consecuencia si el usuario intenta identificarse (con la contraseña establecida), no será capaz de acceder a la consola de MySQL. Por ello, lo primero que debemos hacer es porporcionarle el acceso requerido al usuario con la información que requiere. GRANT ALL PRIVILEGES ON * . * TO 'nombre_usuario'@'localhost'; Los asteriscos en este comando hacen referencia a la base de datos y la tabla (respectivamente) a la cual el nuevo usuario tendrá acceso; específicamente este comando permite al usuario leer, editar, ejecutar y realizar todas las tareas en todas las bases de datos y tablas.

Cómo Crear Un Nuevo Usuario

Embed Size (px)

DESCRIPTION

Base de datos

Citation preview

Page 1: Cómo Crear Un Nuevo Usuario

¿Cómo crear un nuevo usuario?

En la parte 1 del tutorial de MySQL, hicimos todas las

ediciones como usuario root, con acceso completo a todas las

bases de datos. Como sea, en este caso hay mas restricciones

que pueden ser requeridas, hay formas de crear usuarios con

persmisos personalizados.

Vamos empezando por crear un usuario nuevo desde la

consola de MySQL:

CREATE USER 'nombre_usuario'@'localhost' IDENTIFIED BY 'tu_contrasena';

Lamentablemente, a este punto el nuevo usuario no tiene

permisos para hacer algo con las bases de datos. Por

consecuencia si el usuario intenta identificarse (con la

contraseña establecida), no será capaz de acceder a la

consola de MySQL.

Por ello, lo primero que debemos hacer es porporcionarle el

acceso requerido al usuario con la información que requiere.

GRANT ALL PRIVILEGES ON * . * TO 'nombre_usuario'@'localhost';

Los asteriscos en este comando hacen referencia a la base de

datos y la tabla (respectivamente) a la cual el nuevo usuario

tendrá acceso; específicamente este comando permite al

usuario leer, editar, ejecutar y realizar todas las tareas en

todas las bases de datos y tablas.

Una vez que has finalizado con los permisos que deseas

configurar para tus nuevos usuarios, hay que asegurarse

siempre de refrescar todos los privilegios.

Page 2: Cómo Crear Un Nuevo Usuario

FLUSH PRIVILEGES;

Tus cambios ahora surtirán efecto.

¿Cómo otorgar permisos de usuario diferentes?

Aquí está una pequeña lista del resto de los posibles permisos

que los usuarios pueden gozar.

ALL PRIVILEGES: como mencionamos previamente esto

permite a un usuario de MySQL acceder a todas las bases

de datos asignadas en el sistema.

CREATE: permite crear nuevas tablas o bases de datos.

DROP: permite eliminar tablas o bases de datos.

DELETE: permite eliminar registros de tablas.

INSERT: permite insertar registros en tablas.

SELECT: permite leer registros en las tablas.

UPDATE: permite actualizar registros seleccionados en

tablas.

GRANT OPTION: permite remover privilegios de usuarios.

Para proporcionar un permiso a usuario específico, puedes

utilizar ésta estructura:

GRANT [permiso] ON [nombre de bases de datos].[nombre de tabla] TO ‘[nombre de usuario]’@'localhost’;

Si deseas darles acceso a cualquier base de datos o tabla,

asegurate de insertar un asterisco (8) en lugar del nombre de

la base de datos o tabla.

Cada vez que tu actualizas o cambias permisos, asegúrate de

refrescar los privilegios mediante FLUSH PRIVILEGES;.

Page 3: Cómo Crear Un Nuevo Usuario

Si necesitas remover un permiso, la estructura es casi idéntica

a la que los asigna:

REVOKE [permiso] ON [nombre de base de datos].[nombre de tabla] FROM ‘[nombre de usuario]’@‘localhost’;

Así como puedes borrar bases de datos con DROP, también

puedes usar el comando DROP para borrar usuarios:

DROP USER ‘usuario_prueba’@‘localhost’;

Para probar el nuevo usaurio, debes cerrar sesión

escribiendo quit y volviendo a iniciar sesión con éste comando

en la consola:

mysql -u [nombre de usuario]-pCrear tabla e ingresar datos

Insert Into nombre_tabla (nombre_campo1, nombre_campo2,...) Values (valor_campo1, valor_campo2...)Un ejemplo sencillo a partir de nuestra tabla modelo es la introducción de un nuevo cliente lo cual se haría con una instrucción de este tipo:

Insert Into clientes (nombre, apellidos, direccion, poblacion, codigopostal, email, pedidos) Values ('Perico', 'Palotes', 'Percebe n°13', 'Lepe', '123456', '[email protected]', 33)Como puede verse, los campos no numéricos o booleanos van delimitados por apostrofes: '. También resulta interesante ver que el código postal lo hemos guardado como un campo no numérico. Esto es debido a que en determinados paises (Inglaterra,como no) los codigos postales contienen también letras.

Page 4: Cómo Crear Un Nuevo Usuario

Nota: Si deseamos practicar con una base de datos que está vacía primero debemos crear las tablas que vamos a llenar. Las tablas también se crean con sentencias SQL y aprendemos a hacerlo en el último capítulo.Aunque, de todos modos, puede que sea más cómodo utilizar un programa con interfaz gráfica, como Access, que nos puede servir para crear las tablas en bases de datos del propio Access o por ODBC a otras bases de datos como SQL Server o MySQL, por poner dos ejemplos.

Otra posibilidad en una base de datos como MySQL, sería crear las tablas utilizando un software como PhpMyAdmin.

Por supuesto, no es imprescindible rellenar todos los campos del registro. Eso sí, puede ser que determinados campos sean necesarios. Estos campos necesarios pueden ser definidos cuando construimos nuestra tabla mediante la base de datos.

Nota: Si no insertamos uno de los campos en la base de datos se inicializará con el valor por defecto que hayamos definido a la hora de crear la tabla. Si no hay valor por defecto, probablemente se inicialice como NULL (vacío), en caso de que este campo permita valores nulos. Si ese campo no permite valores nulos (eso se define también al crear la tabla) lo más seguro es que la ejecución de la sentenca SQL nos de un error.

Resulta muy interesante, ya veremos más adelante el por qué, el introducir durante la creación de nuestra tabla un campo autoincrementable que nos permita asignar un único número a cada uno de los registros. De este modo, nuestra tabla clientes presentaría para cada registro un número exclusivo del cliente el cual nos será muy util cuando consultemos varias tablas simultáneamente.

Page 5: Cómo Crear Un Nuevo Usuario

Las preguntas del parcial:

Crear base d datos con su nombre

Crear 2 tablas sus apellidos con al menos 4 campos

Insertar al menos 3 registros a cada tabla

Crear un usuario y asignarle privilegios distintos a cada tabla (solamente de su base de datos)

Dejar constancia (código en un texto)