Diferència entre revisions de la pàgina «M2 - Bases de dades / Exercicis UF3: Llenguatges SQL / Solucions Administració Oracle»

De wikiserver
Dreceres ràpides: navegació, cerca
Línia 8: Línia 8:
 
SIZE 1M
 
SIZE 1M
 
AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
 
AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
 +
o
 +
ALTER DATABASE DATAFILE 'compras.ora' AUTOEXTEND ON MAXSIZE UNLIMITED;
 
</pre>
 
</pre>
 
3. Crear un rol que tenga los siguientes privilegios: INSERT y  SELECT  en las tablas DEPART y EMPLE, CREATE SESSION, CREATE DATABASE LINK, CREATE TABLE y  CREATE VIEW
 
3. Crear un rol que tenga los siguientes privilegios: INSERT y  SELECT  en las tablas DEPART y EMPLE, CREATE SESSION, CREATE DATABASE LINK, CREATE TABLE y  CREATE VIEW
Línia 99: Línia 101:
 
REVOKE ALL ON TABLA1 FROM USU4;
 
REVOKE ALL ON TABLA1 FROM USU4;
 
REVOKE ALL ON TABLA2 FROM USU4;
 
REVOKE ALL ON TABLA2 FROM USU4;
 +
o
 +
REVOKE ALL PRIVILEGES FROM USU4;
 
</pre>
 
</pre>
 
16. Hacer que USU5 sólo pueda conectarse en dos sesiones concurrentes a la vez.  
 
16. Hacer que USU5 sólo pueda conectarse en dos sesiones concurrentes a la vez.  

Revisió del 21:08, 11 març 2015

1. 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;

2. Modificar el tablespace anterior para que pueda autoextenderse automáticamente, sin límite de espacio en disco.

ALTER TABLESPACE COMPRAS ADD DATAFILE 'COMPRAS1.ORA' 
SIZE 1M
AUTOEXTEND ON NEXT 1M MAXSIZE UNLIMITED;
o
ALTER DATABASE DATAFILE 'compras.ora' AUTOEXTEND ON MAXSIZE UNLIMITED;

3. Crear un rol que tenga los siguientes privilegios: INSERT y SELECT en las tablas DEPART y EMPLE, CREATE SESSION, CREATE DATABASE LINK, CREATE TABLE y CREATE VIEW

CREATE ROLE UN_ROL;
GRANT INSERT, SELECT ON DEPART TO UN_ROL;
GRANT INSERT, SELECT ON EMPLE TO UN_ROL;
GRANT CREATE SESSION, CREATE DATABASE LINK,CREATE TABLE,
CREATE VIEW TO UN_ROL;

4. Crear un usuario llamado COMPRADOR. El tablespace por defecto es COMPRAS. Se le asigna 1Mb en el tablespace COMPRAS y 0 de cuota en el tablespace SYSTEM. El tablespace temporal será TEMPORARY_DATA. Asignarle el rol anterior.

CREATE USER COMPRADOR IDENTIFIED BY COMPRADOR
DEFAULT TABLESPACE COMPRAS TEMPORARY TABLESPACE TEMP
QUOTA 1M ON COMPRAS  QUOTA 0 ON SYSTEM;

GRANT UN_ROL TO COMPRADOR;

5. Crear un usuario de base de datos llamado ‘administrador’ que tenga funciones de administrador, ponedle de parword administrador

CREATE USER ADMINISTRADOR IDENTIFIED BY ADMINISTRADOR;
GRANT DBA TO ADMINISTRADOR;

6. Conectarse con el nombre de usuario creado anteriormente.

CONNECT ADMINISTRADOR

7. Crear varias tablas como administrador.

CREATE TABLE TABLA1 (N NUMBER(10));
CREATE TABLE TABLA2 (N NUMBER(10));
CREATE TABLE TABLA3 (N NUMBER(10));

8. Crear 5 usuarios nuevos ( USU1, USU2, USU3, USU4, USU5) con la misma contraseña que el nombre, asignándoles el tablespace COMPRAS y una cuota de 2M

CREATE USER USU1 IDENTIFIED BY USU1 DEFAULT TABLESPACE 
COMPRAS
QUOTA 2M ON COMPRAS;

CREATE USER USU2 IDENTIFIED BY USU2 DEFAULT TABLESPACE 
COMPRAS
QUOTA 2M ON COMPRAS;

CREATE USER USU3 IDENTIFIED BY USU3 DEFAULT TABLESPACE
COMPRAS
QUOTA 2M ON COMPRAS;

CREATE USER USU4 IDENTIFIED BY USU4 DEFAULT TABLESPACE
COMPRAS
QUOTA 2M ON COMPRAS;

CREATE USER USU5 IDENTIFIED BY USU5 DEFAULT TABLESPACE
COMPRAS
QUOTA 2M ON COMPRAS;

9. Dar permiso a USU1 sólo para que pueda conectarse a la BD.

GRANT CREATE SESSION TO USU1;

10. Crear un rol que permita conectarse a la BD y hacer SELECT sobre las tablas definidas en el ejercicio 7.

CREATE ROLE ROL_USU;
GRANT CREATE SESSION TO ROL_USU;
GRANT SELECT ON TABLA1 TO ROL_USU;
GRANT SELECT ON TABLA2 TO ROL_USU;
GRANT SELECT ON TABLA3 TO ROL_USU;

11. Asignar el rol creado a los usuarios USU2 y USU3.

GRANT ROL_USU TO USU2, USU3;

12. Conceder al usuario USU4 privilegios INSER y DELETE sobre algunas tablas con la opción de poder concedérselos a otros usuarios.

GRANT INSERT, DELETE ON TABLA1 TO USU4 WITH GRANT OPTION;
GRANT INSERT, DELETE ON TABLA2 TO USU4 WITH GRANT OPTION;

13. Conceder al usuario USU5 cuatro privilegios de sistema, dos de ellos con la opción de poder concedérselos a otros usuarios.

GRANT CREATE ANY TABLE,CREATE USER TO USU5 WITH ADMIN
OPTION;
GRANT ALTER TABLESPACE, CREATE TABLESPACE TO USU5;

14. Conceder a todos los usuarios de la BD privilegios para que puedan modificar ciertas columnas de algunas tablas.

GRANT UPDATE(N) ON TABLA1 TO PUBLIC;
GRANT UPDATE(N) ON TABLA2 TO PUBLIC;

15. Quitar a los usuarios USU3 y USU4 todos los privilegios que tenían asignados.

REVOKE ROL_USU FROM USU3;
REVOKE ALL ON TABLA1 FROM USU4;
REVOKE ALL ON TABLA2 FROM USU4;
o
REVOKE ALL PRIVILEGES FROM USU4;

16. Hacer que USU5 sólo pueda conectarse en dos sesiones concurrentes a la vez.

CREATE PROFILE LIM_SESION LIMIT SESSIONS_PER_USER 2;
ALTER USER USU5 IDENTIFIED BY USU5 PROFILE LIM_SESION;

17. Limitar el tiempo de conexión a la BD a 5 minutos a los usuarios USU2 y USU3.

CREATE PROFILE TIEMPOLIMITE LIMIT CONNECT_TIME 5;
ALTER USER USU2 IDENTIFIED BY USU2 PROFILE TIEMPOLIMITE;
ALTER USER USU3 IDENTIFIED BY USU3 PROFILE TIEMPOLIMITE;