| 27 SQL- Gestión en Oracle con SQL |
|
|
|
|
Gestión de perfiles, roles y tablespaces en Oracle bajo SQL. Privilegios Es la capacidad de un usuario dentro de la base de datos a realizar determinadas operaciones o acceder a determinados objetos de otros usuarios. Privilegios sobre los objetos Nos permite acceder y realizar cambios en los datos de otros usuairo. Ejemplo: El privilegio de consultar la tabla de otro usuario es un privilegio sobre objetos. GRANT {PRIV_OBJETO [, PRIV_OBJETO]… | ALL [PRIVILEGES]} [(COL [,COL]…)] ON [USUARIO] OBJETO TO {USUARIO | ROL | PUBLIC} [,{USUARIO | ROL | PUBLIC}…] [WITH GRANT OPTION]; ON= Especifica el objeto sobre el que se dan los privilegios. TO= Identifica a los usuarios o roles a los que se conceden los privilegios. ALL= Concede todos los privilegios sobre el objeto especificado. WITCH GRANT OPTION= Permite que el receptor del privilegio o rol se lo asigne a otros usuarios o roles. PUBLIC= Asigna los privilegios a todos los usuarios actuales y futuros: El propósito principal del grupo PUBLIC es garantizar el acceso a determinados objetos a todos los usuarios de la base de datos. Privilegios de sistema Dan derecho a ejecutar un tipo de comando SQL o a realzar alguna acción sobre objetos de un tipo especificado. Por ejemplo, el privilegio para crear TABLESPACES es un privilegio de sistema. Formato: GRANT {PRIVILEGIO | ROL} [, {PRIVILEGIO | ROL}, …] TO {USUARIO | ROL | PUBLIC} [,{USUARIO | ROL | PUBLIC}] [WITH ADMIN OPTION]; WITH ADMIN OPTION= Permite que el receptor del privilegio o rol pueda conceder esos mismos privilegios a otros usuarios o roles. Retirada de privilegios de objetos a los usuarios REVOKE {PRIV_OBJETO [,PRIV_OBJETO]… | ALL [PRIVILEGES]} ON [USUARIO.]OBJETO FROM {USUARIO | ROL | PUBLIC} [, {USUARIO | ROL | PUBLIC}]…; Retirada de privilegios de sistema o roles a los usuarios REVOKE {PRIV_SISTEMA | ROL} [,{PRIV_SISTEMA | ROL}]… FROM {USUARIO | ROL | PUBLIC} [,{USUARIO | ROL | PUBLIC}]…; Roles Conjunto de privilegios agrupados. Formato: CREATE ROLE NOMBREROL [IFENTIFIED BY CONTRASEÑA];
Supresión de privilegios en los roles REVOKE NOMBREPRIVILEGIO ON NOMBRETABLA FROM NOMBREROL; REVOKE NOMBREPRIVILEGIO FROM NOMBREROL; Supresión de un rol DROP ROLE NOMBREROL; Establecer un rol por defecto ALTER USER NOMBREUSUARIO DEFAULT {[ROLE NOMBRE_ROL] | [NONE]}; NONE= Hace que el usuario no tenga rol por defecto. Perfiles: Conjunto de límites a los recursos de la base de datos: CREATE PROFILE NOMBREPERFIL LIMIT {NOMBRE DE LOS LÍMITES} {ENTERO [K | M] | UNLIMITED | DEFAULT }; UNLIMITED= No hay limites sobre un recurso en particular. DEFAULT= Coge el limite del perfil default. Borrado de un perfil: DROP FILE NOMBREPERFIL [CASCADE]; Gestión de tablespaces Un tablespace es una unidad lógica de almacenamiento d datos representada físicamente por uno o más archivos de datos. Se recomienda no mezclar datos de diferentes aplicaciones en un mismo tablespace. Para crear un tablespace CRATE TABLESPACE NOMBRETABLESPACE DATAFILE 'NOMBREARCHIVO' [SIZE ENTERO [K | M] [REUSE] [DEFAULT STORAGE (INITIAL TAMAÑO MINEXTENTS TAMAÑO MAXEXTENTS TAMAÑO PCTINCREASE VALOR )] [ONLINE | OFFLINE]; REUSE= Reutiliza el archivo si ya existe o lo crea si no existe. DEFAULT STORAGE= Define el almacenamiento por omisión para todos los objetos que se creen en este espacio de la tabla. Fija la cantidad de espacio si no se especifica en la sentencia CREATE TABLE. Modificación de tablespaces ALTER TABLESPACE NOMBRETABLESPACE {[ADD DATAFILE 'NOMBREARCHIVO' [SIZE ENTERO [K | M] [REUSE] [AUTOEXTEND ON… | OFF] ] [REANME DATAFILE 'ARCHIVO' [, 'ARCHIVO']… TO 'ARCHIVO' [, 'ARCHIVO']] [DEFAULT STORAGE CLAUSULAS_ALMACENAMIENTO] [ONLINE | OFFLINE] }; ADD_DATAFILE= Añade al tablespace uno o varios archivos. AUTOEXTEND= Activa o desactiva el crecimiento automático de los archivos de datos del tablespace. Cuando un tablespace se llena podemos usar esta opción para que el tamaño del archivo o archivos de datos asociados crezca automáticamente. Autoextend off: desactiva el crecimiento automático. RENAME_DATAFILE= Cambia el nombre de un archivo existente del tablespace. Este cambio se tiene que hacer desde el sistema operativo y, después, ejecutar la orden SQL. Borrado de tablespaces DROP TABLESPACE NOMBRETABLESPACE [INCLUDING CONTENTS]; INCLUDING CONTENTS= Permite borrar un tablespace que tenga datos. Sin esta opción solo se puede suprimir un tablespace vacío. Se recomienda poner el talespace offline entes de borrarlo para asegurarse de que no haya sentencias SQL que estén accediendo a datos del tablesapace, en cuyo caso no seria posible borrarlo. Cuando se borra un tablespace los archivos asociados no se borran del sistema operativo, por lo que tendremos que borrarlos de forma manual. Texto original de www.desarrolloweb.com |
||
| < Anterior |
|---|

