Administración de Tablespaces, Usuarios y Privilegios en Oracle SQL
Ejercicios de Administración en Oracle Database
Ejercicio 1: Creación de un Tablespace
Crear un tablespace de nombre COMPRAS asociándole un fichero en disco llamado 'COMPRAS.ORA' de 5 MB:
CREATE TABLESPACE compras DATAFILE 'COMPRAS.ORA' SIZE 5M;Ejercicio 2: Modificación de Tablespace con Autoextensión
Modificar el tablespace del Ejercicio 1 para que pueda autoextenderse automáticamente, sin límite de espacio:
ALTER TABLESPACE compras ADD DATAFILE 'COMPRAS.ORA' SIZE 1M AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;Ejercicio 3: Creación y Asignación de Permisos a un Rol
Crear un rol que tenga los siguientes privilegios: INSERT y SELECT en Depart y Emple; además de CREATE SESSION, CREATE DATABASE LINK, CREATE TABLE y CREATE VIEW:
CREATE ROLE Role1;
GRANT INSERT, SELECT ON depart TO Role1;
GRANT INSERT, SELECT ON emple TO Role1;
GRANT CREATE SESSION, CREATE DATABASE LINK, CREATE TABLE, CREATE VIEW TO Role1;Ejercicio 4: Creación de Usuario con Tablespace, Cuota y Rol
Crear un usuario (COMPRADOR). Su tablespace por defecto será COMPRAS. Se le asigna 1 MB de cuota de uso en el tablespace compras y se le asigna el rol del Ejercicio 3:
CREATE USER comprador IDENTIFIED BY comprador DEFAULT TABLESPACE compras QUOTA 1M ON compras;
GRANT Role1 TO comprador;Ejercicio 5: Secuencia Completa de Administración de Usuarios y Privilegios
Realizar la siguiente secuencia de instrucciones en el orden indicado:
1. Creación de un usuario administrador
Crear un usuario de base de datos que tenga permisos de administración:
CREATE USER ADMIN IDENTIFIED BY admin;
GRANT dba TO ADMIN;2. Conexión a la base de datos
Conectarse con el usuario creado:
CONN admin/admin;3. Creación de tablas en el esquema propio
Crear varias tablas en el propio esquema:
CREATE TABLE uno (N NUMBER(8));
CREATE TABLE dos (N NUMBER(8));4. Creación masiva de usuarios con cuota
Crear cinco usuarios nuevos asignándoles un tablespace por defecto y cuota:
CREATE USER usu1 IDENTIFIED BY usu1 DEFAULT TABLESPACE compras QUOTA 1M ON compras;5. Asignación de permisos básicos de conexión
Dar permisos a uno de los usuarios solo para que pueda conectarse a la base de datos:
GRANT CREATE SESSION TO usu1;6. Creación de rol con permisos específicos
Crear un rol que permita conectarse a la base de datos y hacer SELECT sobre alguna tabla:
CREATE ROLE rol2;
GRANT CREATE SESSION TO rol2;
GRANT SELECT ON emple TO rol2;7. Asignación de roles a usuarios
Conceder el rol creado a los usuarios anteriores:
GRANT rol2 TO usu2;
GRANT rol2 TO usu3;8. Concesión de privilegios con WITH GRANT OPTION
Conceder a usu1 privilegios sobre alguna tabla con la opción de poder otorgarlo a otros:
GRANT SELECT ON depart TO usu1 WITH GRANT OPTION;9. Concesión de privilegios de sistema con WITH ADMIN OPTION
Conceder a usu4 privilegios de sistema pudiendo otorgárselos a otros:
GRANT CREATE ANY TABLE, CREATE USER TO usu4 WITH ADMIN OPTION;10. Revocación de privilegios
Quitar todos los privilegios a los usuarios 3 y 4:
REVOKE ALL PRIVILEGES ON depart FROM usu3;
REVOKE ALL PRIVILEGES ON depart FROM usu4;11. Creación de perfil y limitación de sesiones concurrentes
Hacer que usu5 solo pueda conectarse en dos sesiones concurrentes a la vez:
CREATE PROFILE Prueba1 LIMIT SESSIONS_PER_USER 2;
ALTER USER usu5 IDENTIFIED BY 123 PROFILE Prueba1;