You are on page 1of 156

Base de Datos Oracle 11g:

Taller de Administracin I
Volumen I Gua del Alumno
D17090CS30
Edicin 3.0
Noviembre de 2013
D50253

Autores
Tom Best
M.J. Billings
Colaboradores y
Revisores Tcnicos
Anthony Woodell
Barry Trute
Celia Antonio
Christine Jeal
Donna Keesling
Howard Bradley
James Spiller
Janet Stern
Jean-Francois Verrier
Joel Goodman
John Hibbard
Larry Baumann
Magnus Isaksson
M.J. Bryksa
Paul Needham
Pierre Labrousse
Raza Siddiqui
Sandra Cheevers
Stefan Lindblad
Stella Kister
Steve Friedberg
Steven Karam
Sushma Jagannath
Tammy Bednar
Redactores
Navratan Singh
Nita Pavitran
Raj Kumar
Diseadores Grficos
Satish Bettegowda
Steve Elwood
Editor
Joseph Fernandez
Copyright 2013, Oracle. Todos los derechos reservados.
Renuncia
Este documento contiene informacin propiedad de Oracle Corporation y se
encuentra protegido por la legislacin de derechos de autor y otras leyes sobre la
propiedad intelectual. Usted slo podr realizar copias o imprimir este documento
para uso exclusivo por usted en los cursos de formacin de Oracle. Este documento
no podr ser modificado ni alterado en modo alguno. Salvo que la legislacin de los
derechos de autor lo considere un uso excusable o legal o "fair use", no podr
utilizar, compartir, descargar, cargar, copiar, imprimir, mostrar, representar,
reproducir, publicar, conceder licencias, enviar, transmitir ni distribuir este
documento
total ni parcialmente sin autorizacin expresa por parte de Oracle.
La informacin contenida en este documento est sujeta a cambio sin previo aviso.
Si detecta cualquier problema en el documento, le agradeceremos que nos lo
comunique por escrito a: Oracle University, 500 Oracle Parkway, Redwood Shores,
California 94065 USA. Oracle Corporation no garantiza que este documento est
exento de errores.
Restricted Rights Notice
Si esta documentacin se entrega al Gobierno de los EE.UU. o a cualquier entidad
que la utilice en nombre del Gobierno de los EE.UU., se aplicar la siguiente
advertencia:
U.S. GOVERNMENT RIGHTS
The U.S. Government s rights to use, modify, reproduce, release, perform, display,
or disclose these training materials are restricted by the terms of the applicab
le
Oracle license agreement and/or the applicable U.S. Government contract.
Aviso de Marca Comercial
Oracle, JD Edwards y PeopleSoft son marcas comerciales registradas de Oracle
Corporation y/o sus subsidiarias. Todos los dems nombres pueden ser marcas
comerciales de sus respectivos propietarios.
Contenido
Prefacio
1
2
Introduccin
Objetivos del Curso 1-2
Planificacin Sugerida 1-3
Objetivos 1-4
Productos y Servicios Oracle 1-5
Base de Datos Oracle 11g: g Significa Grid 1-6
Arquitectura de la Base de Datos Oracle 1-8
Estructuras de Bases de Datos 1-9
Estructuras de Memoria de Oracle 1-10
Estructuras de Proceso 1-12
Gestin de Instancias de Oracle 1-13
Proceso de Servidor y Cach de Buffers de la Base de Datos 1-14
Estructura de Base de Datos Fsica 1-15
Tablespaces y Archivos de Datos 1-17
Tablespaces SYSTEM y SYSAUX 1-18
Segmentos, Extensiones y Bloques 1-19
Estructuras de Bases de Datos Fsicas y Lgicas 1-20
Ejemplos del Curso: Esquema HR 1-22
Arquitectura de Base de Datos: Resumen de Componentes Estructurales 1-23
Resumen 1-24
Instalacin del Software de la Base de Datos Oracle
Objetivos 2-2
Tareas de un Administrador de la Base de Datos Oracle 2-3
Herramientas Utilizadas para Administrar Bases de Datos Oracle 2-4
Instalacin: Requisitos del Sistema 2-6
Comprobacin de los Requisitos del Sistema 2-7
Arquitectura Flexible ptima (OFA) 2-8
Uso de la Arquitectura Flexible ptima 2-9
Definicin de Variables de Entorno 2-11
Oracle Universal Installer (OUI) 2-13
Instalacin del Software de Oracle 2-14
Opciones de Configuracin de Base de Datos 2-15
Ejecucin de Archivos de Comandos de Configuracin 2-16
Fin de la Instalacin 2-17
Opciones Avanzadas de Instalacin 2-18
Opcin de Instalacin: Modo Silencioso 2-19
Resumen 2-20
Visin General de la Prctica: Instalacin del Software de Oracle 2-21
iii
3
4
Creacin de una Base de Datos Oracle
Objetivos 3-2
Planificacin de la Base de Datos 3-3
Bases de Datos: Ejemplos 3-4
Asistente de Configuracin de Bases de Datos (DBCA) 3-5
Uso de DBCA para Crear una Base de Datos 3-6
Password Management 3-12
Creacin de una Plantilla de Diseo de Bases de Datos 3-13
Uso de DBCA para Suprimir una Base de Datos 3-14
Resumen 3-16
Visin General de la Prctica: Uso de DBCA 3-17
Gestin de la Instancia de Oracle
Objetivos 4-2
Marco de Gestin 4-3
Inicio y Parada de Database Control 4-4
Oracle Enterprise Manager 4-5
Acceso a Oracle Enterprise Manager 4-6
Pgina Inicial de la Base de Datos 4-7
Uso de SQL*Plus e iSQL*Plus para Acceder a las Bases de Datos 4-8
Uso de iSQL*Plus 4-9
Configuracin de iSQL*Plus para el Acceso de SYSDBA y SYSOPER 4-10
Uso de SQL*Plus 4-12
Llamada a SQL*Plus desde un Archivo de Comandos del Shell 4-13
Llamada a un Archivo de Comandos SQL desde SQL*Plus 4-14
Archivos de Parmetros de Inicializacin 4-15
Parmetros de Inicializacin Simplificados 4-16
Visualizacin y Modificacin de Parmetros de Inicializacin 4-18
Inicio y Cierre de la Base de Datos 4-19
Inicio de una Instancia de Base de Datos Oracle 4-20
Inicio de una Instancia de Base de Datos Oracle: NOMOUNT 4-21
Inicio de una Instancia de Base de Datos Oracle: MOUNT 4-22
Inicio de una Instancia de Base de Datos Oracle: OPEN 4-23
Cierre de una Instancia de la Base de Datos Oracle 4-24
Modos de Cierre 4-25
Opciones de SHUTDOWN 4-26
Uso de SQL*Plus para el Inicio y el Cierre 4-29
Visualizacin del Log de Alertas 4-30
Visualizacin del Historial de Alertas 4-31
Vistas de Rendimiento Dinmico 4-32
iv
Vistas de Rendimiento Dinmico: Ejemplos de Uso 4-33
Vistas de Rendimiento Dinmico: Consideraciones 4-34
Resumen 4-35
Visin General de la Prctica: Gestin de la Instancia de Oracle 4-36
5
6
Gestin de Estructuras de Almacenamiento de Bases de Datos
Objetivos 5-2
Estructuras de Almacenamiento 5-3
Almacenamiento de Datos de Tabla 5-4
Anatoma de un Bloque de Base de Datos 5-5
Tablespaces y Archivos de Datos 5-6
Oracle Managed Files (OMF) 5-7
Gestin de Espacio en Tablespaces 5-8
Exploracin de la Estructura de Almacenamiento 5-9
Creacin de un Nuevo Tablespace 5-10
Almacenamiento de Tablespaces Gestionados Localmente 5-12
Tablespaces en la Base de Datos Preconfigurada 5-14
Modificacin de un Tablespace 5-16
Acciones con Tablespaces 5-19
Borrado de Tablespaces 5-21
Visualizacin de Informacin de Tablespaces 5-22
Recopilacin de Informacin de Almacenamiento 5-23
Visualizacin de Contenido de Tablespaces 5-24
Ampliacin de la Base de Datos 5-25
Qu es Gestin Automtica de Almacenamiento? 5-26
ASM: Funciones Clave y Ventajas 5-27
ASM: Conceptos 5-28
Resumen 5-29
Visin General de la Prctica: Gestin de Estructuras de Almacenamiento
de Bases de Datos 5-30
Administracin de Seguridad del Usuario
Objetivos 6-2
Cuentas de Usuario de Base de Datos 6-3
Cuentas Predefinidas: SYS y SYSTEM 6-5
Creacin de un Usuario 6-6
Autenticacin de Usuarios 6-7
Autenticacin de Administradores 6-9
Desbloqueo de Cuentas de Usuario y Restablecimiento de Contraseas 6-10
Privilegios 6-11
Privilegios del Sistema 6-12
Privilegios de Objeto 6-14
v
Revocacin de Privilegios del Sistema con ADMIN OPTION 6-15
Revocacin de Privilegios de Objeto con GRANT OPTION 6-16
Ventajas de los Roles 6-17
Asignacin de Privilegios a Roles y de Roles a Usuarios 6-18
Roles Predefinidos 6-19
Creacin de un Rol 6-20
Roles Seguros 6-21
Asignacin de Roles a Usuarios 6-22
Perfiles y Usuarios 6-23
Implementaciones de las Funciones de Seguridad con Contrasea 6-25
Creacin de un Perfil de Contrasea 6-27
Funcin de Verificacin de Contraseas Proporcionadas: VERIFY_FUNCTION 6-28
Asignacin de Cuota a Usuarios 6-29
Resumen 6-31
Visin General de la Prctica: Administracin de Usuarios 6-32
7
Gestin de Objetos de Esquema
Objetivos 7-2
Qu es un Esquema? 7-3
Acceso a Objetos de Esquema 7-5
Nomenclatura de Objetos de Base de Datos 7-6
Especificacin de Tipos de Dato en Tablas 7-8
Creacin y Modificacin de Tablas 7-11
Descripcin de la Integridad de los Datos 7-13
Definicin de Restricciones 7-15
Violaciones de Restricciones 7-16
Estados de Restricciones 7-17
Comprobacin de Restricciones 7-19
Creacin de Restricciones con SQL: Ejemplos 7-20
Visualizacin de las Columnas de una Tabla 7-21
Visualizacin del Contenido de una Tabla 7-22
Acciones con Tablas 7-23
Borrado de una Tabla 7-24
Truncamiento de una Tabla 7-25
ndices 7-26
Tipos de ndices 7-27
ndice de rbol B 7-28
ndices de Bitmap 7-30
Opciones de ndice 7-32
Creacin de ndices 7-34
vi
Qu es una Vista? 7-35
Creacin de Vistas 7-36
Secuencias 7-37
Creacin de una Secuencia 7-38
Uso de una Secuencia 7-40
Tablas Temporales 7-41
Tablas Temporales: Consideraciones 7-43
Diccionario de Datos: Visin General 7-44
Vistas del Diccionario de Datos 7-45
Diccionario de Datos: Ejemplos de Uso 7-47
Resumen 7-48
Visin General de la Prctica: Administracin de Objetos de Esquema 7-49
8
Gestin de Datos y Simultaneidad
Objetivos 8-2
Manipulacin de Datos mediante SQL 8-3
Comando INSERT 8-4
Comando UPDATE 8-5
Comando DELETE 8-6
Comando MERGE 8-7
Comandos COMMIT y ROLLBACK 8-9
PL/SQL 8-10
Administracin de Objetos PL/SQL 8-12
Objetos PL/SQL 8-13
Funciones 8-14
Procedimientos 8-15
Paquetes 8-16
Especificacin y Cuerpo del Paquete 8-17
Paquetes Incorporados 8-18
Disparadores 8-19
Eventos Disparadores 8-20
Bloqueos 8-21
Mecanismo de Bloqueo 8-22
Simultaneidad de Datos 8-23
Bloqueos de DML 8-25
Mecanismo de Puesta en Cola 8-26
Conflictos de Bloqueo 8-27
Posibles Causas de Conflictos de Bloqueo 8-28
Deteccin de Conflictos de Bloqueo 8-29
Resolucin de Conflictos de Bloqueo 8-30
vii
Resolucin de Conflictos de Bloqueo mediante SQL 8-31
Interbloqueos 8-32
Resumen 8-33
Visin General de la Prctica: Gestin de Datos y Simultaneidad 8-34
9
Gestin de Datos de Deshacer
Objetivos 9-2
Manipulacin de Datos 9-3
Datos de Deshacer 9-4
Transacciones y Datos de Deshacer 9-6
Almacenamiento de Informacin de Deshacer 9-7
Datos de Deshacer frente a Datos de Redo 9-8
Control de Deshacer 9-9
Administracin de Deshacer 9-11
Configuracin de Retencin de Deshacer 9-12
Garanta de Retencin de Deshacer 9-14
Tamao de los Tablespaces de Deshacer 9-15
Uso del Asesor de Deshacer 9-16
Resumen 9-17
Visin General de la Prctica: Gestin de Segmentos de Deshacer 9-18
10 Implementacin de Seguridad de la Base de Datos Oracle
Objetivos 10-2
Requisitos de Seguridad de la Industria 10-3
Separacin de Responsabilidades 10-5
Seguridad de la Base de Datos 10-6
Principio de Privilegio ms Bajo 10-8
Aplicacin del Principio de Privilegio Ms Bajo 10-9
Control de Actividades Sospechosas 10-11
Auditora de la Base de Datos Estndar 10-12
Activacin de Auditora 10-13
Pistas de Auditora Uniformes 10-14
Pgina de Auditora de Enterprise Manager 10-16
Especificacin de Opciones de Auditora 10-17
Uso y Mantenimiento de la Informacin de Auditora 10-18
Auditora Basada en Valores 10-19
Auditora Detallada 10-21
Poltica de FGA 10-22
Sentencia DML Auditada: Consideraciones 10-24
Instrucciones de FGA 10-25
Auditora de DBA 10-26
viii
Mantenimiento de la Pista de Auditora 10-27
Actualizaciones de Seguridad 10-28
Aplicacin de Parches de Seguridad 10-29
Resumen 10-30
Visin General de la Prctica: Implementacin de Seguridad de la Base de Datos Oracle
10-31
11 Configuracin del Entorno de Red de Oracle
Objetivos 11-2
Servicios de Red de Oracle 11-3
Listener de Red de Oracle 11-4
Establecimiento de Conexiones de Red 11-5
Establecimiento de una Conexin 11-6
Sesiones de Usuario 11-7
Herramientas para Configurar y Gestionar la Red de Oracle 11-8
Utilidad Listener Control 11-9
Sintaxis de la Utilidad Listener Control 11-10
Pgina Inicial del Listener 11-12
Pgina Net Services Administration 11-13
Creacin de un Listener 11-14
Adicin de Direcciones de Listener 11-15
Registro de Servicio de Base de Datos 11-16
Mtodos de Nomenclatura 11-17
Conexin Sencilla 11-18
Nomenclatura Local 11-19
Nomenclatura de Directorios 11-20
Mtodo de Nomenclatura Externa 11-21
Configuracin de Alias de Servicio 11-22
Opciones de Conexin Avanzada 11-23
Prueba de la Conectividad de Red de Oracle 11-25
Sesiones de Usuario: Servidor Dedicado 11-26
Sesiones de Usuario: Servidor Compartido 11-27
SGA y PGA 11-28
Servidor Compartido: Pool de Conexiones 11-29
Cundo No se Debe Utilizar un Servidor Compartido 11-30
Resumen 11-31
Visin General de la Prctica: Trabajar con los Componentes de Red de Oracle 11-32
12 Mantenimiento Proactivo
Objetivos 12-2
Mantenimiento Proactivo 12-3
Introduccin a la Terminologa 12-4
ix
Estadsticas del Optimizador 12-5
Uso de la Pgina Manage Optimizer Statistics 12-7
Niveles de Estadsticas 12-9
Repositorio de Carga de Trabajo Automtica (AWR) 12-10
Infraestructura de AWR 12-11
Juegos de Instantneas AWR 12-12
Enterprise Manager y AWR 12-13
Gestin de AWR 12-14
Monitor de Diagnstico de Base de Datos Automtico (ADDM) 12-15
Resultados de ADDM 12-16
Recomendaciones de ADDM 12-17
Marco de Asesoramiento 12-18
Enterprise Manager y Asesores 12-20
Paquete DBMS_ADVISOR 12-21
Alertas Generadas por el Servidor 12-22
Alertas Generadas por el Servidor por Defecto 12-23
Definicin de Umbrales 12-24
Creacin y Prueba de una Alerta 12-25
Notificacin de Alertas 12-26
Reaccin ante Alertas 12-28
Tipos de Alerta y Eliminacin de Alertas 12-29
Tareas de Mantenimiento Automticas 12-30
Resumen 12-31
Visin General de la Prctica: Mantenimiento Proactivo 12-32
13 Gestin de Rendimiento
Objetivos 13-2
Control del Rendimiento 13-3
Control del Rendimiento: Top Sessions 13-7
Control del Rendimiento: Top Services 13-8
Asesor de Ajustes SQL: Visin General 13-9
Recomendaciones y Opciones del Asesor de Ajustes SQL 13-10
Uso del Asesor de Ajustes SQL 13-11
Uso del Asesor de Ajustes SQL: Ejemplo 13-12
Asesor de Ajustes SQL: Estadsticas SQL 13-13
Asesor de Ajustes SQL: Identificacin de SQL Duplicados 13-14
Uso del Asesor de Acceso SQL 13-15
Gestin de los Componentes de la Memoria 13-17
Activacin de la Gestin Automtica de Memoria Compartida (ASMM) 13-18
Definicin Manual de la Gestin de Memoria Compartida 13-20
x
Uso del Asesor de Memoria 13-21
Estadsticas de Rendimiento Dinmicas 13-22
Vistas de Solucin de Problemas y de Ajustes 13-24
Objetos No Vlidos o No Utilizables 13-25
Resumen 13-27
Visin General de la Prctica: Control y Mejora del Rendimiento 13-28
14 Conceptos de Copia de Seguridad y Recuperacin
Objetivos 14-2
Parte de su Trabajo 14-3
Categoras de Fallos 14-4
Fallo de Sentencia 14-5
Fallo de Proceso de Usuario 14-6
Fallo de Red 14-7
Error del Usuario 14-8
Fallo de la Instancia 14-10
Procesos en Segundo Plano y Recuperacin: Punto de Control (CKPT) 14-11
Procesos en Segundo Plano y Recuperacin: Archivos Redo Log y Escritor de Log 14-1
3
Procesos en Segundo Plano y Recuperacin: Proceso de Archivado (ARCn) 14-14
Recuperacin de Instancias 14-15
Fases de la Recuperacin de Instancias 14-16
Ajuste de la Recuperacin de Instancias 14-17
Uso del Asesor de MTTR 14-18
Fallo del Medio Fsico 14-19
Configuracin de Recuperabilidad 14-20
Archivos de Control 14-21
Archivos Redo Log 14-22
Multiplexin del Redo Log 14-23
Archivos Archive Log 14-24
Archivo Archive Log: Nomenclatura y Destinos 14-25
Modo ARCHIVELOG 14-27
Resumen 14-28
Visin General de la Prctica: Configuracin de Recuperabilidad 14-29
15 Realizacin de Copias de Seguridad de Bases de Datos
Objetivos 15-2
Soluciones de Copia de Seguridad: Visin General 15-3
Oracle Secure Backup 15-4
Copia de Seguridad Gestionada por Usuario 15-5
Terminologa 15-6
Recovery Manager (RMAN) 15-10
xi
Configuracin de Valores de Copia de Seguridad 15-11
Planificacin de Copias de Seguridad: Estrategia 15-14
Planificacin de Copias de Seguridad: Options 15-15
Planificacin de Copias de Seguridad: Settings 15-16
Planificacin de Copias de Seguridad: Schedule 15-17
Planificacin de Copias de Seguridad: Review 15-18
Copia de Seguridad del Archivo de Control en un Archivo de Rastreo 15-19
Gestin de Copias de Seguridad 15-21
rea de Recuperacin de Flash 15-22
Resumen 15-23
Visin General de la Prctica: Creacin de Copias de Seguridad de Bases de Datos 15-24
16 Recuperacin de Bases de Datos
Objetivos 16-2
Apertura de una Base de Datos 16-3
Cambio del Estado de la Instancia 16-5
Mantenimiento de una Base de Datos Abierta 16-6
Prdida de un Archivo de Control 16-7
Prdida de un Archivo Redo Log 16-8
Prdida de un Archivo de Datos en Modo NOARCHIVELOG 16-9
Prdida de un Archivo de Datos No Crtico en Modo ARCHIVELOG 16-10
Prdida de un Archivo de Datos Crtico del Sistema en Modo ARCHIVELOG 16-11
Resumen 16-12
Visin General de la Prctica: Recuperacin de Bases de Datos 16-13
17 Realizacin de Flashback
Objetivos 17-2
Tecnologa de Flashback: Ventajas 17-3
Cundo Utilizar la Tecnologa de Flashback 17-4
Realizacin de Flashback en Cualquier Error 17-5
Flashback de Base de Datos: Visin General 17-6
Flashback de Base de Datos: Reduccin del Tiempo de Restauracin 17-7
Flashback de Base de Datos: Consideraciones 17-8
Flashback de Base de Datos: Limitaciones 17-9
Activacin de la Funcin de Flashback de Base de Datos 17-10
Flashback de Tabla: Visin General 17-11
Flashback de Tabla 17-12
Activacin del Movimiento de Filas en una Tabla 17-13
Realizacin de Flashback de Tabla 17-14
Flashback de Tabla: Consideraciones 17-15
Flashback de Borrado: Visin General 17-17
xii
Flashback de Tablas Borradas mediante Enterprise Manager 17-18
Flashback de Borrado: Consideraciones 17-19
Acceso al Tiempo de Flashback 17-20
Consulta de Flashback: Visin General 17-21
Consulta de Flashback: Ejemplo 17-22
Consulta de Flashback de Versiones: Visin General 17-23
Consulta de Flashback de Versiones mediante Enterprise Manager 17-24
Consulta de Flashback de Versiones: Consideraciones 17-25
Consulta de Flashback de Transacciones: Visin General 17-26
Consulta de Flashback de Transacciones mediante Enterprise Manager 17-27
Consulta de Flashback de Transacciones: Consideraciones 17-28
Resumen 17-29
Visin General de la Prctica: Uso de Flashback 17-30
18 Movimiento de Datos
Objetivos 18-2
Movimiento de Datos: Arquitectura General 18-3
Objeto de Directorio: Visin General 18-4
Creacin de Objetos de Directorio 18-5
SQL*Loader: Visin General 18-6
Carga de Datos con SQL*Loader 18-8
Archivo de Control de SQL*Loader 18-9
Mtodos de Carga 18-11
Pump de Datos: Visin General 18-13
Pump de Datos: Ventajas 18-15
Exportacin e Importacin de Pump de Datos: Visin General 18-17
Utilidad Pump de Datos: Interfaces y Modos 18-18
Seleccin de Objetos Detallada 18-19
Funcin Avanzada: Creacin de Ejemplos 18-20
Opciones de Exportacin: Archivos 18-21
Ubicaciones de los Archivos de Pump de Datos 18-22
Planificacin y Ejecucin de un Trabajo 18-24
Nomenclatura y Tamao de los Archivos de Pump de Datos 18-25
Importacin de Pump de Datos 18-26
Importacin de Pump de Datos: Transformaciones 18-27
Pump de Datos: Consideracin del Rendimiento 18-29
Parmetros de Inicializacin de Rendimiento 18-30
Rutas de Acceso de Pump de Datos: Consideraciones 18-31
Uso de Enterprise Manager para Controlar Trabajos de Pump de Datos 18-32
Relleno de Tabla Externa 18-33
xiii
Uso de Tablas Externas 18-34
Relleno de Tabla Externa mediante ORACLE_DATAPUMP 18-35
Relleno de Tabla Externa mediante ORACLE_LOADER 18-36
Diccionario de Datos 18-37
Resumen 18-38
Visin General de la Prctica: Movimiento de Datos 18-39
Apndice A: Prcticas
Apndice B: Soluciones
Apndice C: Comandos Bsicos de Linux y vi
Apndice D: Sintaxis de Sentencias SQL
Apndice E: Acrnimos y Trminos
Apndice F: Siguientes Pasos para Continuar con la Formacin
ndice
xiv
Prefacio
Prefacio - 2
Perfil
Cualificacin Necesaria para el Curso
Antes de empezar este curso, debe contar con las siguientes cualificaciones:

Experiencia laboral con SQL


Organizacin del Curso
Base de Datos Oracle 11g: Taller de Administracin I es un curso dirigido por un i
nstructor que incluye
teora y ejercicios prcticos. Las demostraciones en lnea y las sesiones de prcticas e
scritas sirven para
reforzar los conceptos y las habilidades presentados.
Prximos Cursos Sugeridos
Base de Datos Oracle 11g: Taller de Administracin II (D17092GC30)
Prefacio - 3
Publicaciones Relacionadas
Publicaciones de Oracle
Ttulo
Oracle Database 2 Day DBA 11g Release 2 (10.2)
Oracle Database Administrator's Guide 11g Release 2 (10.2)
Oracle Database Backup and Recovery Basics 11g Release 2 (10.2)
Oracle Database Concepts 11g Release 2 (10.2)
Oracle Database Licensing Information 11g Release 2 (10.2)
Oracle Database Net Services Administrator's Guide 11g Release 2 (10.2)
Oracle Database Net Services Reference 11g Release 2 (10.2)
Oracle Database New Features Guide 11g Release 2 (10.2)
Oracle Database Performance Tuning Guide 11g Release 2 (10.2)
Nmero de Artculo
B14196-01
B14231-01
B14192-01
B14220-01
B14199-01
B14212-01
B14213-01
B14214-01
B14211-01
Oracle Database PL/SQL Packages and Types Reference 11g Release 2 (10.2) B14258-
01
Oracle Database PL/SQL User's Guide and Reference 11g Release 2 (10.2)
Oracle Database Recovery Manager Quick Start Guide 11g Release 2 (10.2)
Oracle Database Recovery Manager Reference 11g Release 2 (10.2)
Oracle Database Security Guide 11g Release 2 (10.2)
Oracle Database SQL Quick Reference 11g Release 2 (10.2)
Oracle Database SQL Reference 11g Release 2 (10.2)
Publicaciones Adicionales
B14261-01
B14193-01
B14194-01
B14266-01
B14195-01
B14200-01


Boletines de las versiones del sistema
Guas de instalacin y del usuario
Archivos lame
Artculos del grupo internacional de usuarios de Oracle (International Oracle User s
Group, IOUG)
Oracle Magazine
Prefacio - 4
Convencin Elemento Ejemplo Negrita Palabras y frases resaltadas en contenido Web
slo Para navegar dentro de esta aplicacin, no haga clic en los botones Atrs y Adela
nte. Negrita y cursiva Trmino del glosario (si existe uno) El algoritmo inserta l
a nueva clave. Corchetes Nombres de teclas Pulse [Intro]. Maysculas y minsculas Bo
tones, casillas de control, disparadores de aplicacin, ventanas Haga clic en el b
otn Executable. Active la casilla de control Can t Delete Card. Asigne un disparado
r When-Validate-Item al bloque ORD. Abra la ventana Master Schedule. Parntesis an
gulares Rutas de acceso de mens Seleccione File > Save. Comas Secuencias de tecla
s Pulse y suelte las siguientes teclas de una en una: [Alt], [F], [D] Courier ne
w, distincin entre maysculas y minsculas (el valor por defecto es minsculas) Salida
de cdigo, nombres de directorios, nombres de archivos, contraseas, nombres de ruta
s de acceso, entrada de usuario, nombres de usuario Salida de cdigo: debug.set ('
I', 300); Directorio: bin (DOS), $FMHOME (UNIX) Nombre de archivo: Localice el a
rchivo init.ora. Contrasea: Utilice tiger como contrasea. Nombre de ruta de acceso
: Abra c:\my_docs\projects. Entradas del usuario: Introduzca 300. Nombre de usua
rio: Conctese como HR. Mayscula inicial Etiquetas de los grficos (a menos que el trm
ino sea un nombre propio) Direccin del cliente (salvo Oracle Payables) Cursiva Pa
labras y frases resaltadas, ttulos de manuales y cursos, variables No guarde los
cambios en la base de datos. Para obtener ms informacin, consulte Oracle Database
SQL Reference 11g Release 1(10.1). Introduzca user_id@us.oracle.com, donde user_
id es el nombre del usuario.
Convenciones Tipogrficas
Convenciones Tipogrficas en el Texto
Prefacio - 5
Convencin Elemento Ejemplo Minsculas Nombres de columna, nombres de tabla, nombres
de disparadores de base de datos SELECT last_name FROM employees; CREATE OR REP
LACE TRIGGER secure_employees Contraseas CREATE USER scott IDENTIFIED BY tiger; O
bjetos PL/SQL items.DELETE(3); Cursivas minsculas Variables de sintaxis CREATE RO
LE role Maysculas Funciones y comandos SQL SELECT first_name FROM employees;
Convencin Elemento Ejemplo Comillas Elementos de la interfaz con nombres extensos
que slo llevan mayscula inicial; ttulos de lecciones y captulos en referencias cruz
adas Haga clic en Include a reusable module component y, luego, en Finish. Este te
ma se trata en la leccin titulada, Trabajar con Objetos . Maysculas Nombres de column
a SQL, comandos, funciones, esquemas, nombres de tabla, nombres de disparadores
de base de datos Utilice el comando SELECT para ver la informacin almacenada en l
a columna LAST_NAME de la tabla EMPLOYEES.
Convenciones Tipogrficas (continuacin)
Convenciones Tipogrficas en el Texto (continuacin)
Convenciones Tipogrficas en el Cdigo
Prefacio - 6
Convenciones Tipogrficas (continuacin)
Convenciones Tipogrficas en las Rutas de Acceso de Navegacin
En este curso se utilizan rutas de acceso de navegacin simplificadas, como el eje
mplo siguiente, para guiarle
a travs de Aplicaciones Oracle.
Ejemplo:
Invoice Batch Summary
(N) Invoice > Entry > Invoice Batches Summary (M) Query > Find (B) Approve
Esta ruta de acceso simplificada se traduce en lo siguiente:
1. (N) En la ventana del navegador, seleccione Invoice > Entry > Invoice Batches
Summary.
2. (M) En el men, seleccione Query > Find.
3. (B) Haga clic en el botn Approve.
Notacin:
(N) = Navegador
(M) = Men
(S) = Separador
(I) = Icono
(H) = Enlace de hipertexto
(B) = Botn
Prefacio - 7
Prefacio - 8
Introduccin
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos del Curso
Al finalizar este curso, debera estar capacitado para lo
siguiente:

Instalar, crear y administrar la base de datos


Oracle 11g
Configurar la base de datos para una aplicacin
Utilizar procedimientos de control bsicos
Implementar una estrategia de copia de seguridad
y recuperacin
Mover datos entre bases de datos y archivos
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos del Curso
En este curso instalar el software Oracle Database 11g Enterprise Edition, crear u
na nueva
base de datos y aprender a administrar dicha base de datos.
Tambin configurar la base de datos para dar soporte a una aplicacin y realizar tarea
s como la
creacin de usuarios, definicin de estructuras de almacenamiento y configuracin de l
a
seguridad. Este curso utiliza una aplicacin ficticia. Sin embargo, realizar todas
las tareas
principales necesarias para una aplicacin real.
La administracin de la base de datos no termina tras haberla configurado. Tambin a
prender a
proteger la base de datos diseando una estrategia de copia de seguridad y recuper
acin y a
controlarla para garantizar que funciona correctamente.
Base de Datos Oracle 11g: Taller de Administracin I 1-2
Planificacin Sugerida
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Introduccin
Instalacin
Creacin de Base de Datos
Instancia
Almacenamiento
Usuarios
Esquema
Datos y Simultaneidad
Deshacer
Seguridad
Red
Mantenimiento Proactivo
13. Rendimiento
14. Conceptos de Copia de
Seguridad y Recuperacin
15. Copia de Seguridad
16. Recuperacin
17. Flashback
18. Movimiento de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 1-3
Objetivos
Al finalizar esta leccin, debera estar capacitado para
lo siguiente:

Describir los objetivos del curso


Explicar la arquitectura de la base de datos Oracle 11g
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 1-4
Productos y Servicios Oracle

Bases de datos Oracle


Oracle Application Server
Aplicaciones Oracle
Oracle Collaboration Suite
Oracle Developer Suite
Servicios Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Productos Oracle

Bases de datos Oracle: La base de datos Oracle es la primera base de datos disead
a para
Enterprise Grid Computing (el modo ms flexible y rentable de gestionar informacin
y
aplicaciones).
Oracle Application Server: El servidor certificado para plataforma Java 2 Enterp
rise
Edition (J2EE) de Oracle integra todo lo necesario para desarrollar y desplegar
aplicaciones
basadas en Web. El servidor de aplicaciones despliega portales de comercio elect
rnico,
servicios Web y aplicaciones transaccionales que incluyen aplicaciones basadas e
n PL/SQL,
en Oracle Forms y en J2EE.
Aplicaciones Oracle: Oracle E-Business Suite es un juego completo de aplicacione
s de
negocio para gestionar y automatizar los procesos de la organizacin.
Oracle Collaboration Suite: Oracle Collaboration Suite es un sistema integrado ni
co para
todos los datos de comunicaciones de la organizacin: voz, correo electrnico, fax,
dispositivo mvil, informacin de agenda y archivos.
Oracle Developer Suite: Oracle Development Suite es un completo entorno integrad
o que
combina herramientas de desarrollo de aplicaciones y de anlisis de negocios.
Servicios Oracle: Los servicios como Oracle Consulting y Oracle University propo
rcionan
los conocimientos necesarios para sus proyectos Oracle. Para obtener enlaces tile
s a
diferentes recursos, consulte el apndice titulado Siguientes Pasos para Continuar
con la
Formacin .
Base de Datos Oracle 11g: Taller de Administracin I 1-5
Base de Datos Oracle 11g:
g Significa Grid

Global Grid Forum (GGF)


Infraestructura de grid de Oracle:
Bajo costo
Alta calidad de servicio
Fcil de gestionar
Grid de
almacenamiento
Automatic
Storage
Management
Grid de
base de datos
Real
Application
Clusters
Grid de
aplicacin
Oracle
Streams
Control de
grids
Enterprise
Manager
Grid Control
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: g Significa Grid
Global Grid Forum (GGF) es un organismo que desarrolla estndares para Grid Comput
ing.
Est compuesto por un juego de comits y grupos de trabajo que se centran en diverso
s aspectos
de Grid Computing. Los comits y grupos de trabajo estn compuestos por participante
s
procedentes del mundo acadmico, de la comunidad investigadora y (cada vez ms) de
compaas comerciales. Puede visitar el sitio Web de GGF en la direccin
http://www.gridforum.org.
Oracle ha creado el software de infraestructura de Grid Computing que equilibra
todos los tipos
de cargas de trabajo en todos los servidores y permite que todos ellos se puedan
gestionar como
un sistema completo. Grid Computing puede lograr el mismo nivel elevado de fiabi
lidad que la
computacin de mainframe ya que todos sus componentes estn en cluster. Aunque, a di
ferencia
de los mainframes y los grandes servidores de multiproceso simtrico (SMP) de UNIX
, los grid
pueden incorporar tecnologas de sistemas abiertos, como los procesadores Intel y
el sistema
operativo Linux, con un costo muy bajo.
La tecnologa de Grid Computing de Oracle incluye:
Automatic Storage Management (ASM)
Real Application Clusters (RAC)
Oracle Streams
Enterprise Manager Grid Control
Base de Datos Oracle 11g: Taller de Administracin I 1-6
Base de Datos Oracle 11g: g Significa Grid (continuacin)
Automatic Storage Management distribuye los datos de bases de datos por todos lo
s discos,
crea y mantiene un grid de almacenamiento y proporciona el rendimiento de entrad
a/salida (E/S)
ms elevado con los mnimos costos de gestin. Conforme se agregan o borran discos, AS
M
vuelve a distribuir los datos de manera automtica. (No es necesario disponer de u
n gestor de
volmenes lgicos para gestionar el sistema de archivos.) La duplicacin opcional aume
nta la
disponibilidad de los datos y es posible agregar o borrar discos en lnea. Para ob
tener ms
informacin, consulte la leccin titulada Gestin de Estructuras de Almacenamiento de B
ases
de Datos .
Oracle Real Application Clusters ejecuta y escala todas las cargas de trabajo de
aplicacin en
un cluster de servidores y ofrece las siguientes funciones:

Clusterware integrado: Incluye la funcionalidad para la conectividad de cluster,


mensajes
y bloqueo, control de cluster y recuperacin. Est disponible en todas las plataform
as que
soporta la base de datos Oracle 11g.
Gestin automtica de cargas de trabajo: Se pueden definir reglas para asignar
automticamente recursos de procesamiento a cada servicio durante las operaciones
normales y en respuesta a fallos. Estas reglas se pueden modificar de manera dinm
ica para
satisfacer las cambiantes necesidades de negocio. Esta asignacin dinmica de recurs
os
dentro de un grid de base de datos es exclusiva de Oracle RAC.
Notificacin automtica de eventos a la capa media: Cuando cambia una configuracin
de cluster, la capa media puede adaptarse inmediatamente a la operacin de failove
r de
instancias o a la disponibilidad de una instancia nueva. Esto permite a los usua
rios finales
seguir trabajando cuando se produce un failover de instancias sin los retrasos q
ue
normalmente provocan los timeouts de red. En caso de disponibilidad de instancia
nueva,
la capa media puede iniciar inmediatamente las conexiones de equilibrio de carga
en esa
instancia. Los controladores de Java Database Connectivity (JDBC) de la base de
datos
Oracle 11g disponen de la funcionalidad Fast Connection Failover que se puede acti
var
automticamente para manejar estos eventos.
Oracle Streams proporciona un marco unificado para compartir informacin, combinar
la cola
de mensajes, replicar datos, notificar eventos, cargar el almacn de datos y publi
car y suscribir la
funcionalidad en una tecnologa nica. Oracle Streams puede mantener sincronizadas d
os o ms
copias de origen de datos cuando se apliquen actualizaciones en cualquiera de lo
s sitios. Puede,
de manera automtica, capturar los cambios en las bases de datos, propagar esos ca
mbios a los
nodos suscritos, aplicarlos y detectar y resolver los conflictos de actualizacin
de datos. Las
aplicaciones pueden utilizar directamente Oracle Streams como una funcin de cola
de mensajes
o flujo de trabajo, permitiendo la comunicacin entre las aplicaciones del grid.
Enterprise Manager Grid Control gestiona las operaciones de todo el grid que inc
luyen la
gestin de toda la pila de software, el provisionamiento de usuarios, la clonacin d
e bases de
datos y la gestin de parches. Puede controlar el rendimiento de todas las aplicac
iones desde el
punto de vista de sus usuarios finales. Grid Control considera la disponibilidad
y el rendimiento
de la infraestructura de grid como un todo unificado en lugar de como unidades d
e
almacenamiento, bases de datos y servidores de aplicaciones aislados. Los nodos
de hardware,
bases de datos y servidores de aplicaciones se pueden agrupar en entidades lgicas
nicas y se
puede gestionar un grupo de destinos como una sola unidad.
Nota: En este curso, utilice la Consola de Base de Datos de Enterprise Manager p
ara gestionar
las bases de datos de una en una.
Base de Datos Oracle 11g: Taller de Administracin I 1-7
Arquitectura de la Base de Datos Oracle
Un servidor de Oracle:

Es un sistema de gestin de bases de datos que


proporciona un enfoque abierto, completo e
integrado a la gestin de informacin
Consta de una instancia Oracle y una base de
datos Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Arquitectura de la Base de Datos Oracle
El servidor de Oracle es la clave para la gestin de informacin. Normalmente, un se
rvidor de
Oracle tiene que gestionar de manera fiable una gran cantidad de datos en un ent
orno de varios
usuarios para que numerosos usuarios puedan acceder de manera simultnea a los mis
mos datos.
Todo esto se debe realizar al mismo tiempo que se ofrece un alto rendimiento. As
imismo, un
servidor de Oracle tiene que impedir el acceso no autorizado y proporcionar solu
ciones eficaces
para la recuperacin ante fallos.
Base de Datos Oracle 11g: Taller de Administracin I 1-8
Estructuras de Bases
de Datos
Estructuras de bases
de datos
- Memoria
- Proceso
- Almacenamiento
Estructuras de memoria
Instancia
rea Global del Sistema (SGA)
Estructuras de proceso
Procesos en segundo plano
Estructuras de
almacenamiento
Archivos de base de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Estructuras de Bases de Datos
Cada base de datos Oracle en ejecucin est asociada a una instancia de Oracle. Cuan
do una
base de datos se inicia en un servidor de bases de datos, el software de Oracle
asigna un rea de
memoria compartida denominada rea Global del Sistema (SGA) e inicia varios proces
os en
segundo plano de Oracle. Esta combinacin de SGA y los procesos de Oracle se denom
ina
instancia de Oracle.
Despus de iniciar una instancia, el software de Oracle la asocia a una base de da
tos concreta.
Esto se denomina montaje de la base de datos. La base de datos est ahora lista pa
ra su apertura,
lo que la hace accesible a los usuarios autorizados. Varias instancias se pueden
ejecutar
simultneamente en la misma computadora, accediendo cada una de ellas a su propia
base de
datos fsica.
La arquitectura de la base de datos Oracle se puede ver como varios componentes
estructurales
interrelacionados.
Una base de datos Oracle utiliza procesos y estructuras de memoria para gestiona
r y acceder a la
base de datos. Todas las estructuras de memoria existen en la memoria principal
de las
computadoras que constituyen el servidor de la base de datos. Los procesos son t
rabajos que
funcionan en la memoria de estas computadoras. Un proceso se define como thread d
e control
o mecanismo de un sistema operativo que puede realizar una serie de pasos.
Base de Datos Oracle 11g: Taller de Administracin I 1-9
Estructuras de Memoria
de Oracle
Estructuras de bases
de datos
> Memoria
Proceso
Almacenamiento
Proceso de
Proceso de
Proceso en
servidor
PGA
servidor
PGA
segundo
PGA
1
Pool compartido
Pool Java
2
SGA
Pool de Streams
Cach de
buffers de la
base de datos
plano
Pool grande
Buffer de
redo log
Copyright 2013, Oracle. Todos los derechos reservados.
Estructuras de Memoria de Oracle
Las estructuras de memoria bsicas asociadas a una instancia de Oracle incluyen:

rea Global del Sistema (SGA): Compartida por todos los procesos de servidor y en
segundo plano.
rea Global de Programa (PGA): Privada para cada proceso de servidor y en segundo
plano. Existe una PGA por cada proceso.
SGA es un rea de memoria que contiene datos e informacin de control para la instan
cia.
SGA incluye las siguientes estructuras de datos:

Cach de buffers de la base de datos: Almacena en cach los bloques de datos que se
recuperan de la base de datos.
Buffer de redo log: Almacena en cach la informacin de redo (utilizada para la
recuperacin de instancias) hasta que se pueda escribir en los archivos redo log fs
icos
almacenados en el disco.
Pool compartido: Almacena en cach las distintas construcciones que se pueden comp
artir
entre usuarios.
Pool grande: Es un rea opcional que proporciona grandes asignaciones de memoria p
ara
determinados procesos grandes, como operaciones de recuperacin y copia de segurid
ad de
Oracle y procesos de E/S del servidor.
Base de Datos Oracle 11g: Taller de Administracin I 1-10
Estructuras de Memoria de Oracle (continuacin)

Pool Java: Se utiliza para todos los cdigos y datos Java especficos de la sesin den
tro de
Java Virtual Machine (JVM).
Pool de Streams: Utilizado por Oracle Streams.
Al iniciar la instancia con Enterprise Manager o SQL*Plus, aparece la cantidad d
e memoria
asignada a SGA.
Un rea Global de Programa (PGA) es una regin de la memoria que contiene datos e
informacin de control para cada proceso de servidor. Un proceso de servidor de Or
acle se ocupa
de las solicitudes de un cliente. Cada proceso de servidor tiene su propia PGA c
reada al iniciar el
proceso de servidor. El acceso a PGA es exclusivo para dicho proceso de servidor
y se lee y
escribe slo mediante cdigo de Oracle que acta en su nombre.
Con la infraestructura de SGA dinmica, el tamao de la cach de buffers, el pool comp
artido, el
pool grande, el pool Java y el pool de Streams de la base de datos cambian sin c
errar la instancia.
La base de datos Oracle utiliza los parmetros de inicializacin para crear y config
urar las
estructuras de memoria. Por ejemplo, el parmetro SGA_TARGET especifica la cantida
d total de
espacio disponible en SGA. Si define SGA_TARGET en 0, se desactivar la gestin auto
mtica
de memoria compartida.
Base de Datos Oracle 11g: Taller de Administracin I 1-11
Estructuras de Proceso
Estructuras de bases
de datos
Memoria
> Proceso
Almacenamiento
Proceso de
usuario
PGA
Proceso
de
servidor
Instancia
SGA
Procesos
en segundo plano

Proceso de usuario: Se inicia en el momento en que un usuario


de base de datos solicita una conexin al servidor de Oracle
Proceso de servidor: Conecta a la instancia de Oracle y se inicia
cuando un usuario establece una sesin
Procesos en segundo plano: Se inician al iniciar una instancia
de Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Estructuras de Proceso
Al llamar a un programa de aplicacin o herramienta de Oracle, como Enterprise Man
ager,
el servidor de Oracle crea un proceso de servidor para ejecutar los comandos que
emita la
aplicacin. El servidor de Oracle tambin crea un juego de procesos en segundo plano
para
una instancia que interactan entre s y con el sistema operativo para gestionar las
estructuras
de memoria, realizar una E/S asncrona para escribir datos en disco y llevar a cab
o otras tareas
necesarias. El que estn presentes unos procesos en segundo plano u otros depende
de las
funciones que se estn utilizando en la base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 1-12
Gestin de Instancias de Oracle
SGA
Pool
compartido
Pool Java
Pool
de Streams
Cach de buffers
de la base de datos
Pool grande
Buffer de
redo log
Monitor
del sistema
(SMON)
Punto
de control
(CKPT)
Control de
procesos
(PMON)
Archivos
de control
Escritor
de la base
de datos
(DBWn)
Archivos
de datos
Escritor
de log
(LGWR)
Archivos
redo log
Archivos
archive log
Proceso
de archivado
(ARCn)
Copyright 2013, Oracle. Todos los derechos reservados.
Gestin de Instancias de Oracle
Un servidor de bases de datos Oracle consta de una base de datos Oracle y una in
stancia de
Oracle. Una instancia de Oracle est formada por estructuras de memoria conocidas
como rea
Global del Sistema (SGA) y por procesos en segundo plano que manejan gran parte
del trabajo
en segundo plano relacionado con la ejecucin de una instancia. Los procesos en se
gundo plano
ms comunes son los siguientes:


Monitor del sistema (SMON): Realiza la recuperacin de fallos cuando la instancia
se
inicia despus de un fallo.
Control de procesos (PMON): Realiza la limpieza de procesos cuando falla un proc
eso de
usuario.
Escritor de la base de datos (DBWn): Escribe bloques modificados de la cach de bu
ffers
de la base de datos en los archivos de datos del disco.
Punto de control (CKPT): Actualiza todos los archivos de datos y de control de l
a base de
datos para indicar el punto de control ms reciente.
Escritor de log (LGWR): Escribe las entradas de redo log en el disco.
Proceso de archivado (ARCn): Copia los archivos redo log en un almacenamiento de
archivado cuando se produce un cambio de log.
Base de Datos Oracle 11g: Taller de Administracin I 1-13
Proceso de Servidor y Cach de Buffers
de la Base de Datos
Proceso
de
servidor
SGA
Cach de buffers
de la base de datos
Buffers:
Asignados
Limpios

Libres o no
utilizados

Sucios
DBWn
Archivos de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Proceso de Servidor y Cach de Buffers de la Base de Datos
Cuando se procesa una consulta, el proceso del servidor de Oracle busca en la ca
ch de buffers
de la base de datos cualquier bloque que necesita. Si no encuentra el bloque en
la cach de buffers
de la base de datos, el proceso de servidor lee el bloque del archivo de datos y
coloca una copia
en esa cach. Puesto que es posible que solicitudes posteriores del mismo bloque e
ncuentren el
bloque en memoria, las solicitudes no requerirn lecturas fsicas. El servidor de Or
acle utiliza el
algoritmo de uso menos reciente para dejar obsoletos los buffers a los que no se
ha accedido
ltimamente y crear espacio para los nuevos bloques en la cach de buffers de la bas
e de datos.
Los buffers de la cach de buffers pueden tener uno de los siguientes cuatro estad
os:

Asignado: Se evita que varias sesiones escriban en el mismo bloque al mismo tiem
po.
Las dems sesiones esperan para acceder al bloque.
Limpio: El buffer ahora no est asignado y es candidato para quedarse obsoleto
inmediatamente si no se vuelve a hacer referencia al contenido actual (bloque de
datos).
El contenido est sincronizado con el contenido de los bloques almacenado en el di
sco o el
buffer contiene una instantnea de lectura consistente (CR) de un bloque.
Libre o no utilizado: El buffer est vaco porque la instancia se acaba de iniciar.
Este estado
es muy parecido al estado limpio, salvo que el buffer no se ha utilizado.
Sucio: El buffer ya no est asignado pero el contenido (bloque de datos) ha cambia
do y se
debe vaciar en el disco con DBWn antes de que se quede obsoleto.
Base de Datos Oracle 11g: Taller de Administracin I 1-14
Estructura de Base
de Datos Fsica
Estructuras de bases
de datos
Memoria
Proceso
> Almacenamiento
Archivos de control
Archivo de parmetros
Archivos de datos
Archivos de copia de
seguridad
Archivos redo log en lnea
Archivos archive log
Archivo de contraseas
Archivos log de alertas y de rastreo
Copyright 2013, Oracle. Todos los derechos reservados.
Estructura de Base de Datos Fsica
Los archivos que constituyen una base de datos Oracle estn organizados del siguie
nte modo:

Archivos de control: Contienen datos sobre la propia base de datos (es decir, in
formacin
sobre la estructura de la base de datos fsica). Estos archivos son crticos para la
base de datos.
Sin ellos, no se pueden abrir los archivos de datos para acceder a los datos que
contiene la
base de datos.
Archivos de datos: Contienen los datos de aplicacin o de usuario de la base de da
tos.
Archivos redo log en lnea: Permiten la recuperacin de instancias de la base de dat
os. Si la
base de datos falla y no pierde archivos de datos, la instancia puede recuperar
la base de datos
con la informacin de dichos archivos.
Los siguientes archivos adicionales son importantes para la correcta ejecucin de
la base de datos:

Archivo de parmetros: Se utiliza para definir el modo de configurar la instancia


cuando se
inicie.
Archivo de contraseas: Permite a los usuarios conectarse a la base de datos de fo
rma
remota y realizar tareas administrativas.
Archivos de copia de seguridad: Se utilizan para la recuperacin de la base de dat
os.
Normalmente restaura un archivo de copia de seguridad cuando un fallo del medio
fsico o un
error del usuario ha daado o suprimido el archivo original.
Base de Datos Oracle 11g: Taller de Administracin I 1-15
Estructura de Base de Datos Fsica (continuacin)

Archivos archive log: Contienen un historial en curso de los cambios de datos (r


edo)
generados por la instancia. Mediante estos archivos y una copia de seguridad de
la base de
datos, se puede recuperar un archivo de datos perdido. Es decir, los archive log
s permiten
la recuperacin de archivos de datos restaurados.
Archivos de rastreo: Cada proceso de servidor y en segundo plano puede escribir
en un
archivo de rastreo asociado. Cuando un proceso detecta un error interno, vuelca
informacin sobre el error en su archivo de rastreo. Parte de la informacin escrita
en un
archivo de rastreo va destinada al administrador de la base de datos, mientras q
ue otra
informacin es para los Servicios de Soporte Oracle.
Archivos log de alertas: Son archivos de rastreo especiales. Tambin se conocen co
mo
logs de alertas. El log de alertas de una base de datos es un log cronolgico de m
ensajes y
errores. Oracle recomienda revisar estos archivos.
Base de Datos Oracle 11g: Taller de Administracin I 1-16
Tablespaces y Archivos de Datos

Los tablespaces constan de uno o ms archivos de datos.


Los archivos de datos pertenecen a un solo tablespace.
Archivo de
datos 1
Archivo de
datos 2
Tablespace USERS
Copyright 2013, Oracle. Todos los derechos reservados.
Tablespaces y Archivos de Datos
Una base de datos se divide en unidades lgicas de almacenamiento denominadas tabl
espaces,
que se pueden utilizar para agrupar estructuras lgicas relacionadas. Cada base de
datos est
dividida lgicamente en uno o ms tablespaces. Se crean explcitamente uno o ms archivo
s de
datos para cada tablespace con el fin de almacenar fsicamente los datos de todas
las estructuras
lgicas de un tablespace.
Nota: Tambin pueden crear tablespaces de archivo grande, que son tablespaces con
un nico
archivo de datos aunque de gran tamao (hasta 4 mil millones de bloques de datos).
Los
tablespaces de archivo pequeo tradicionales (utilizados por defecto) pueden conte
ner varios
archivos de datos, pero los archivos no pueden ser tan grandes. Para obtener ms i
nformacin
sobre los tablespaces de archivo grande, consulte Database Administrator s Guide.
Base de Datos Oracle 11g: Taller de Administracin I 1-17
Tablespaces SYSTEM y SYSAUX

Los tablespaces SYSTEM y SYSAUX son


tablespaces obligatorios.
Se crean en el momento de la creacin de la base
de datos.
Deben estar en lnea.
El tablespace SYSTEM se utiliza para la
funcionalidad principal (por ejemplo, las tablas del
diccionario de datos).
El tablespace SYSAUX auxiliar se utiliza para los
componentes adicionales de base de datos (como
el repositorio de Enterprise Manager).
Copyright 2013, Oracle. Todos los derechos reservados.
Tablespaces SYSTEM y SYSAUX
Cada base de datos Oracle contiene un tablespace SYSTEM y un tablespace SYSAUX.
Se crean
automticamente al mismo tiempo que la base de datos. El valor por defecto del sis
tema es crear un
tablespace de archivo pequeo. Tambin se pueden crear tablespaces de archivo grande
, lo que
permite a la base de datos Oracle gestionar archivos de enorme tamao (de hasta 8
exabytes).
Un tablespace puede estar en lnea (accesible) o fuera de lnea (no accesible). El t
ablespace
SYSTEM siempre est en lnea cuando la base de datos est abierta. Almacena tablas que
soportan
la funcionalidad principal de la base de datos como, por ejemplo, las tablas del
diccionario de
datos.
El tablespace SYSAUX es un tablespace auxiliar del tablespace SYSTEM. El tablesp
ace SYSAUX
almacena componentes de base de datos y debe estar en lnea para el correcto funci
onamiento de
todos los componentes de base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 1-18
Segmentos, Extensiones y Bloques

Los segmentos existen en un tablespace.


Los segmentos estn formados por una recopilacin de
extensiones.
Las extensiones son un conjunto de bloques de datos.
Los bloques de datos estn asignados a bloques de
disco.
Segmento
Extensiones
Bloques
de datos
Bloques
de disco
Copyright 2013, Oracle. Todos los derechos reservados.
Segmentos, Extensiones y Bloques
Los objetos de base de datos, como tablas e ndices, se almacenan en los tablespac
es como
segmentos. Cada segmento contiene una o ms extensiones. Una extensin consta de blo
ques de
datos contiguos, lo que significa que cada extensin slo puede existir en un archiv
o de datos. Los
bloques de datos son la unidad ms pequea de E/S de la base de datos.
Cuando la base de datos solicita un juego de bloques de datos del sistema operat
ivo, ste lo asigna a
un sistema de archivos real o bloque de disco en el dispositivo de almacenamient
o. Por este motivo,
no es necesario conocer la direccin fsica de los datos de la base de datos. Esto t
ambin indica que
un archivo de datos se puede segmentar o duplicar en varios discos.
El tamao del bloque de datos se puede definir en el momento de la creacin de la ba
se de datos.
El tamao por defecto de 8 KB es adecuado para la mayora de las bases de datos. Si
la base de
datos da soporte a una aplicacin de almacn de datos con tablas e ndices grandes, un
tamao de
bloque mayor puede ser til.
Si la base de datos da soporte a una aplicacin transaccional en la que la lectura
y escritura se
realizan aleatoriamente, puede ser til especificar un tamao de bloque menor. El ta
mao de bloque
mximo depende del sistema operativo. El tamao de bloque mnimo de Oracle es de 2 KB
y se
utiliza pocas veces (si se llega a usar).
Puede tener tablespaces con distintos tamaos de bloque. Sin embargo, se deben uti
lizar slo para
tablespaces transportables. Para ms informacin, consulte Database Administrator s Gu
ide.
Base de Datos Oracle 11g: Taller de Administracin I 1-19
Estructuras de Bases de Datos Fsicas
y Lgicas
Lgica
Base de datos
Fsica
Esquema
Tablespace
Segmento
Extensin
Bloque de
datos de Oracle
Archivo
de datos
Bloque del
sistema operativo
Copyright 2013, Oracle. Todos los derechos reservados.
Estructuras de Bases de Datos Fsicas y Lgicas
Una base de datos Oracle es una recopilacin de datos que se trata como una unidad
. El objetivo
general de una base de datos es almacenar y recuperar la informacin relacionada.
La base de
datos tiene estructuras lgicas y fsicas.
Tablespaces
Una base de datos se divide en unidades lgicas de almacenamiento denominadas tabl
espaces, que
agrupan estructuras lgicas relacionadas. Por ejemplo, los tablespaces suelen agru
par todos los
objetos de una aplicacin para simplificar algunas operaciones administrativas. Pu
ede tener un
tablespace para los datos de la aplicacin y otro adicional para los ndices de la a
plicacin.
Bases de Datos, Tablespaces y Archivos de Datos
La relacin entre las bases de datos, los tablespaces y los archivos de datos se i
lustra en la
diapositiva. Cada base de datos est dividida de manera lgica en uno o ms tablespace
s. Se crean
explcitamente uno o ms archivos de datos para cada tablespace con el fin de almace
nar
fsicamente los datos de todas las estructuras lgicas de un tablespace. Si se trata
de un tablespace
TEMPORARY, en lugar de un archivo de datos, el tablespace tendr un archivo tempor
al.
Base de Datos Oracle 11g: Taller de Administracin I 1-20
Estructuras de Bases de Datos Fsicas y Lgicas (continuacin)
Esquemas
Un esquema es una recopilacin de objetos de base de datos propiedad de un usuario
de la base
de datos. Los objetos de esquema son estructuras lgicas que hacen referencia dire
cta a datos de
la base de datos. Los objetos de esquema incluyen estructuras como, por ejemplo,
tablas, vistas,
secuencias, procedimientos almacenados, sinnimos, ndices, clusters y enlaces de ba
se de datos.
En general, los objetos de esquema incluyen todo lo que la aplicacin cree en la b
ase de datos.
Bloques de Datos
Al nivel ms detallado de granularidad, los datos de una base de datos Oracle se a
lmacenan en
bloques de datos. Un bloque de datos corresponde a un nmero concreto de bytes de
espacio de
la base de datos fsica en el disco. Se especifica un tamao del bloque de datos par
a cada
tablespace cuando se crea. Una base de datos utiliza y asigna espacio libre de l
a base de datos en
bloques de datos Oracle.
Extensiones
Al nivel siguiente del espacio de la base de datos lgica se denomina extensin. Una
extensin es
un nmero especfico de bloques de datos contiguos (obtenidos en una nica asignacin) q
ue se
utilizan para almacenar un tipo determinado de informacin.
Segmentos
Al nivel de almacenamiento de la base de datos lgica por encima de una extensin se
denomina
segmento. Un segmento es un juego de extensiones asignadas para una determinada
estructura
lgica. Por ejemplo, los diferentes tipos de segmentos incluyen:

Segmentos de datos: Cada tabla no de cluster y no organizada por ndices tiene un


segmento de datos. Todos los datos de la tabla se almacenan en las extensiones d
e su
segmento de datos. Para una tabla particionada, cada particin tiene un segmento d
e datos.
Cada cluster tiene un segmento de datos. Los datos de cada tabla del cluster se
almacenan
en el segmento de datos del cluster.
Segmentos de ndice: Cada ndice tiene un segmento de ndice que almacena todos sus
datos. Para un ndice particionado, cada particin tiene un segmento de ndice.
Segmentos de deshacer: El administrador de la base de datos crea un tablespace U
NDO
para almacenar temporalmente informacin de deshacer. La informacin de un segmento
de deshacer se utiliza para generar informacin de base de datos de lectura consis
tente y,
durante la recuperacin de la base de datos, para realizar una operacin de rollback
de las
transacciones sin confirmar para los usuarios.
Segmentos temporales: La base de datos Oracle crea segmentos temporales cuando u
na
sentencia SQL necesita un rea de trabajo temporal para terminar la ejecucin. Cuand
o la
sentencia termina la ejecucin, las extensiones del segmento temporal vuelven a la
instancia para un uso futuro. Especifique un tablespace temporal por defecto par
a cada
usuario o un tablespace temporal por defecto que se utilice en toda la base de d
atos.
La base de datos Oracle asigna el espacio dinmicamente. Cuando las extensiones ex
istentes de
un segmento estn completas, se agregan extensiones adicionales. Debido a que las
extensiones
se asignan segn sea necesario, las extensiones de un segmento pueden o no ser con
tiguas en el
disco.
Base de Datos Oracle 11g: Taller de Administracin I 1-21
Ejemplos del Curso: Esquema HR
REGIONS
REGION_ID (PK)
REGION_NAME
COUNTRIES
COUNTRY_ID (PK)
COUNTRY_NAME
REGION_ID (FK)
LOCATIONS
LOCATION_ID (PK)
STREET_ADDRESS
POSTAL_CODE
CITY
STATE_PROVINCE
COUNTRY_ID (FK)
DEPARTMENTS
DEPARTMENT_ID (PK)
DEPARTMENT_NAME
MANAGER_ID
LOCATION_ID (FK)
JOBS
JOB_ID (PK)
JOB_TITLE
MIN_SALARY
MAX_SALARY
EMPLOYEES
EMPLOYEE_ID (PK)
FIRST_NAME
LAST_NAME
EMAIL
PHONE_NUMBER
HIRE_DATE
JOB_ID (FK)
SALARY
COMMISION_PCT
MANAGER_ID (FK)
DEPARTMENT_ID (FK)
JOB_HISTORY
EMPLOYEE_ID (PK)
START_DATE (PK)
END_DATE
JOB_ID (FK)
DEPARTMENT_ID (FK)
Copyright 2013, Oracle. Todos los derechos reservados.
Ejemplos del Curso: Esquema HR
Los ejemplos utilizados en este curso pertenecen una aplicacin de recursos humano
s (HR), que se
puede crear como parte de la base de datos inicial.
A continuacin, se muestran algunas reglas principales de negocio de la aplicacin H
R:
Cada departamento puede ser el empleador de uno o ms empleados. Cada empleado se
puede asignar a un nico departamento.
Cada puesto debe ser para uno o ms empleados. Cada empleado debe estar asignado a
un
nico puesto simultneamente.
Cuando un empleado cambia su departamento o puesto, un registro de la tabla
JOB_HISTORY registra las fechas de inicio y de finalizacin de las asignaciones pa
sadas.
Los registros de JOB_HISTORY se identifican mediante una clave primaria compuest
a (PK):
las columnas EMPLOYEE_ID y START_DATE.
Notacin: PK = Clave primaria, FK = Clave ajena
Las lneas slidas representan las restricciones obligatorias de clave ajena y las ln
eas discontinuas
las opcionales.
La tabla EMPLOYEES tambin tiene una restriccin de clave ajena consigo misma. sta es
una
implementacin de la regla de negocio: Cada empleado informa directamente a un nico
superior.
La clave ajena es opcional porque el empleado de nivel superior no informa a otr
o empleado.
Base de Datos Oracle 11g: Taller de Administracin I 1-22
Arquitectura de Base de Datos:
Resumen de Componentes Estructurales

Estructuras de memoria:
rea Global del Sistema (SGA): Cach de buffers de
la base de datos, buffer de redo y diversos pools
rea Global de Programa (PGA)
Estructuras de proceso:
Proceso de usuario y proceso del servidor
Procesos en segundo plano: SMON, PMON, DBWn,
CKPT, LGWR, ARCn, etc.
Estructuras de almacenamiento:
Lgicas: Base de datos, esquema, tablespace,
segmento, extensin y bloque Oracle
Fsicas: Archivos para datos, parmetros, redo y
bloque del sistema operativo
Copyright 2013, Oracle. Todos los derechos reservados.
Arquitectura de Base de Datos: Resumen de Componentes Estructurales
En esta leccin, ha aprendido, a un alto nivel, sobre los componentes estructurale
s de la base de
datos Oracle: estructuras de memoria, de proceso y de almacenamiento. En las sig
uientes
lecciones encontrar informacin ms detallada.
Base de Datos Oracle 11g: Taller de Administracin I 1-23
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Instalar, crear y administrar la base de datos


Oracle 11g
Configurar la base de datos para una aplicacin
Utilizar procedimientos de control bsicos
Implementar una estrategia de copia de seguridad
y recuperacin
Mover datos entre bases de datos y archivos
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 1-24
Instalacin del Software de la Base de
Datos Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para
lo siguiente:

Describir su rol como administrador de base de


datos (DBA) y explicar las tareas y herramientas
tpicas
Planificar una instalacin de base
de datos Oracle
Utilizar la Arquitectura Flexible
ptima (OFA)
Instalar el software de Oracle
mediante Oracle Universal Installer
(OUI)
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 2-2
Tareas de un Administrador de la
Base de Datos Oracle
Un enfoque prioritario para disear, implementar y mantener
una base de datos Oracle implica las siguientes tareas:
1. Evaluar el hardware del servidor de bases de datos
2. Instalar el software de Oracle
3. Planificar la estrategia de base de datos y de seguridad
4. Crear, migrar y abrir la base de datos
5. Realizar una copia de seguridad de la base de datos
6. Inscribir los usuarios del sistema y planificar su acceso a
la Red de Oracle
7. Implementar el diseo de la base de datos
8. Recuperarse de fallos de la base de datos
9. Controlar el rendimiento de la base de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Tareas de un Administrador de la Base de Datos Oracle
Un administrador de la base de datos (DBA) suele ser responsable de la instalacin
del software de
Oracle y de la creacin de la base de datos. Como DBA, puede que sea responsable d
e la creacin
de las estructuras de almacenamiento de la base de datos como, por ejemplo, los
tablespaces.
Adems, puede crear el esquema o juego de objetos para incluir los datos de la apl
icacin.
Es preciso garantizar que la base de datos est disponible para los usuarios. Para
ello, puede iniciar
la base de datos, realizar copias de seguridad con cierta periodicidad y control
ar el rendimiento de
la base de datos. Estas tareas se deben realizar dentro del marco de una estrate
gia de seguridad.
A medida que avance por las lecciones de este curso, aprender a realizar cada una
de estas tareas.
Tambin puede consultar la gua Oracle Database Administrator s Guide si precisa ms
informacin acerca de cada una de las tareas indicadas en la diapositiva.
En esta leccin, se centrar en la instalacin. Para realizar esta tarea principal, te
nga en cuenta las
siguientes subtareas:
Comprender qu lugar ocupa el proceso de instalacin en la arquitectura tcnica global
de
una organizacin.
Revisar (y actualizar) los planes de capacidad.
Seleccionar el software de base de datos (versin y opciones necesarias).
Asegurarse de que se cumplen los requisitos del sistema para todos los elementos
seleccionados.
Base de Datos Oracle 11g: Taller de Administracin I 2-3
Herramientas Utilizadas para Administrar
Bases de Datos Oracle

Oracle Universal Installer


Asistente de Configuracin de Bases de Datos
Asistente de Actualizacin de Bases de Datos
Oracle Net Manager
Oracle Enterprise Manager
SQL*Plus e iSQL*Plus
Recovery Manager
Oracle Secure Backup
Pump de datos
SQL*Loader
Herramientas de lnea de comandos
Copyright 2013, Oracle. Todos los derechos reservados.
Herramientas Utilizadas para Administrar Bases de Datos Oracle
Se pueden utilizar las siguientes herramientas para la instalacin y actualizacin:

Oracle Universal Installer (OUI): Oracle Universal Installer instala el software


y las
opciones de Oracle. Puede iniciar automticamente el Asistente de Configuracin de B
ases
de Datos (DBCA) para crear una base de datos.
Asistente de Configuracin de Bases de Datos (DBCA): Crea una base de datos a part
ir
de las plantillas proporcionadas por Oracle. Permite copiar una base de datos in
icial
preconfigurada. De manera alternativa, puede crear su propia base de datos y pla
ntillas.
Asistente de Actualizacin de Bases de Datos (DBUA): Esta herramienta le gua por lo
s
pasos necesarios para actualizar su base de datos existente a una nueva versin de
Oracle.
Oracle Net Manager: Se utiliza para configurar la conectividad de red de sus apl
icaciones
y bases de datos Oracle.
Base de Datos Oracle 11g: Taller de Administracin I 2-4
Herramientas Utilizadas para Administrar Bases de Datos Oracle (continuacin)
Las siguientes herramientas se utilizan para gestionar su instancia y base de da
tos Oracle:

Oracle Enterprise Manager (EM): EM combina una consola grfica, agentes, servicios
comunes y herramientas para proporcionar una plataforma de gestin del sistema com
pleta
e integrada para la gestin de productos Oracle. Despus de instalar el software de
Oracle,
crear o actualizar una base de datos y configurar la red, puede utilizar Enterpr
ise Manager
como la nica interfaz para gestionar la base de datos. Adems de proporcionar una
interfaz de usuario basada en Web para ejecutar comandos SQL, interacta de forma
ininterrumpida con otros componentes de Oracle que se utilizan para administrar
la base de
datos (por ejemplo, Recovery Manager y el Planificador).
Las tres herramientas principales de Enterprise Manager que se utilizan para adm
inistrar
una base de datos Oracle son las siguientes:
- Consola de Base de Datos de Enterprise Manager: Se utiliza para administrar un
a
base de datos.
- Enterprise Manager Grid Control: Se utiliza para administrar varias bases de d
atos al
mismo tiempo.
- Consola Java de Enterprise Manager: Se utiliza para acceder a herramientas que
no
estn basadas en Web.
SQL*Plus: SQL*Plus es la interfaz estndar de lnea de comandos que se utiliza para
gestionar la base de datos.
iSQL*Plus: iSQL*Plus es una interfaz basada en explorador para una base de datos
Oracle.
Recovery Manager (RMAN): RMAN es una herramienta de Oracle que ofrece una
solucin completa para cubrir las necesidades de copia de seguridad, restauracin y
recuperacin de toda la base de datos o de archivos especficos de sta.
Oracle Secure Backup facilita la gestin de las copias de seguridad en cintas en O
racle
Ecosystem, lo que incluye lo siguiente:
- Proteccin de la base de datos Oracle en cintas mediante la integracin con Recove
ry
Manager
- Soporte completo de Oracle Real Application Clusters (RAC)
- Administracin central de clientes distribuidos y servidores de medios fsicos,
incluidos Oracle Application Server, Oracle Collaboration Suite y binarios y
directorio raz de Oracle
Pump de datos: La utilidad de pump de datos permite la transferencia de datos de
una base
de datos a otra a alta velocidad. Por ejemplo, puede exportar una tabla e import
arla a otra
base de datos.
SQL*Loader: La utilidad SQL*Loader permite la carga de datos de un archivo exter
no en
una base de datos Oracle. Es una de las diversas utilidades de Oracle que puede
utilizar
para cargar datos en tablas de base de datos.
Herramientas de lnea de comandos:
- Para administrar Enterprise Manager, utilice:
emctl start | status | set | stop
-
-
Para parar e iniciar iSQL*Plus, utilice:
isqlplusctl start | stop
Para administrar el listener, utilice:
lsnrctl help | start | status | stop
Base de Datos Oracle 11g: Taller de Administracin I 2-5
Instalacin: Requisitos del Sistema

Requisitos de memoria:
1 GB para la instancia con Database Control
Requisitos de espacio en disco:

1,5 GB de espacio de intercambio


400 MB de espacio en disco en el directorio /tmp
Entre 1,5 GB y 3,5 GB para el software de Oracle
1,2 GB para la base de datos preconfigurada (opcional)
2,4 GB para el rea de
recuperacin de flash
(opcional)

Sistema operativo: Consulte


la documentacin.
Copyright 2013, Oracle. Todos los derechos reservados.
Instalacin: Requisitos del Sistema
La instalacin estndar puede llevarse a cabo en una computadora con 1 GB de RAM y
1,5 GB de espacio de intercambio o mayor.
En funcin del nivel de actividad de la mquina en la que realice la instalacin del s
oftware
de la base de datos Oracle, la instalacin estndar terminar en 20 minutos o menos.
stos son algunos detalles de la instalacin:
- La base de datos Oracle 11g slo incluye una plantilla de base de datos inicial.
- Se eliminan los archivos duplicados.
- Hay un gran nmero de otros productos y demostraciones que se instalan desde CD
adicionales.
Los requisitos de hardware que aparecen en la diapositiva son requisitos mnimos e
n todas las
plataformas. Es posible que la instalacin tenga requisitos adicionales (sobre tod
o en cuanto a
espacio en disco).
Nota: Un tipo de instalacin Enterprise Edition que incluye una base de datos inic
ial estndar se
denomina instalacin estndar .
Base de Datos Oracle 11g: Taller de Administracin I 2-6
Comprobacin de los Requisitos del Sistema

Espacio temporal
adecuado
Problemas de
64 bits frente
a 32 bits
Comprobaciones del sistema operativo correcto
Nivel de parche del sistema operativo
Paquetes del sistema
Parmetros del ncleo y del sistema
Permisos del servidor X
Intercambio suficiente
Directorio ORACLE_HOME no vaco
Copyright 2013, Oracle. Todos los derechos reservados.
Comprobacin de los Requisitos del Sistema
La instalacin de la base de datos Oracle 11g automatiza la mayora de las comprobac
iones de
requisitos:
Se comprueba el espacio temporal adecuado. Se determinan cules son los requisitos
mnimos
de espacio temporal para la instalacin y configuracin y esos requisitos se validan
durante el
proceso de instalacin.
No se pueden llevar a cabo instalaciones de 64 bits en directorios raz de Oracle
que ya tengan
instalado software de 32 bits (y viceversa).
En la plataforma Linux, RedHat-3.0, 4.0, Asianux 1.0, 2.0 y SUSE Linux E.S. 9.0
estn
certificados.
El proceso de instalacin comprueba si se han instalado todos los parches necesari
os del
sistema operativo.
El proceso de instalacin comprueba si se han definido correctamente todos los parm
etros
necesarios del ncleo y del sistema operativo.
El proceso de instalacin verifica que se ha definido la variable de entorno DISPL
AY y que el
usuario tiene los permisos suficientes para mostrar la variable DISPLAY especifi
cada.
El proceso de instalacin verifica que el sistema tiene definido el espacio de int
ercambio
suficiente.
El proceso de instalacin verifica que el directorio raz de Oracle en el que se va
a realizar la
nueva instalacin est vaco o que es una de las diversas versiones soportadas sobre l
as que se
puede instalar la base de datos Oracle 11g y que estn registradas en el inventari
o de Oracle.
Base de Datos Oracle 11g: Taller de Administracin I 2-7
Arquitectura Flexible ptima (OFA)
OFA est diseada para:

Organizar grandes cantidades de software


Facilitar tareas administrativas rutinarias
Facilitar el cambio entre varias bases de datos
Oracle
Gestionar y administrar de manera adecuada el
crecimiento de la base de datos
Ayudar a eliminar la fragmentacin del espacio libre
Copyright 2013, Oracle. Todos los derechos reservados.
Arquitectura Flexible ptima (OFA)
OFA es un mtodo para configurar la base de datos Oracle y otras bases de datos. E
sta
arquitectura aprovecha las capacidades del sistema operativo y de los subsistema
s de disco para
crear una configuracin fcil de administrar que permita una flexibilidad mxima para
bases de
datos de alto rendimiento y en crecimiento. Los mtodos aqu descritos son los funda
mentos de
OFA.
OFA est diseada para:
Organizar grandes cantidades de software y datos complicados en el disco, con el
fin de
evitar cuellos de botella y un rendimiento deficiente de los dispositivos
Facilitar tareas administrativas rutinarias, como la realizacin de copias de segu
ridad del
software y de los datos, que a menudo son vulnerables a la corrupcin de datos
Facilitar el cambio entre varias bases de datos Oracle
Gestionar y administrar adecuadamente el crecimiento de la base de datos
Ayudar a eliminar la fragmentacin del espacio libre en el diccionario de datos, a
islar otra
fragmentacin y minimizar la contencin de recursos
Para obtener ms informacin sobre los objetivos y la implementacin de OFA, consulte
Oracle
Installation Guide for UNIX Systems.
Base de Datos Oracle 11g: Taller de Administracin I 2-8
Uso de la Arquitectura Flexible ptima

Nomenclatura de puntos de montaje:


/u01
/disk01
Nomenclatura de directorios:
/u01/app/oracle
/u01/app/applmgr
Nomenclatura de archivos:
Archivos de control: controln.ctl
Archivos redo log: redon.log
Archivos de datos: tn.dbf
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de la Arquitectura Flexible ptima
En el ncleo de OFA hay un esquema de nomenclatura que ofrece un estndar para aplic
arlo a los
puntos de montaje (que son con frecuencia los discos fsicos), directorios y subdi
rectorios de
dichos puntos de montaje y, finalmente, a los propios archivos.
Sintaxis del punto de montaje: Asigne un nombre a todos los puntos de montaje ut
ilizando la
sintaxis /pm, donde p es una constante de cadena y m es una clave nica de longitu
d fija
(normalmente un nmero de dos dgitos) utilizada para diferenciar cada punto de mont
aje.
Algunos ejemplos de puntos de montaje son /u01 y /u02.
Sintaxis de directorios raz: Asigne un nombre a todos los directorios raz utilizan
do la sintaxis
/pm/h/u, donde pm es un nombre de punto de montaje, h un nombre de directorio es
tndar y u
es el nombre del propietario del directorio. Algunos ejemplos de directorios raz
compatibles con
OFA son los siguientes:
/u01/app/oracle
/u01/home/oracle
Sintaxis de directorios de software: Almacene cada versin del software de Oracle
en un
directorio que coincida con el patrn: /pm/h/u/product/v. Aqu, product es un litera
l y v
es una variable para el nmero de versin. Esta sintaxis ayuda a activar la funcin OF
A de varias
versiones del software de aplicaciones que se ejecutan simultneamente. De modo qu
e una
instalacin compatible con OFA de la base de datos Oracle 11g versin 10.2.0 aparece
ra del
siguiente modo:
/u01/app/oracle/product/10.2.0
Base de Datos Oracle 11g: Taller de Administracin I 2-9
Uso de la Arquitectura Flexible ptima (continuacin)
Sintaxis de la nomenclatura de subdirectorios: Para facilitar la organizacin de d
atos
administrativos, debe almacenar archivos de administracin especficos de la base de
datos en
subdirectorios que coincidan con el patrn: /h/admin/d/a/. Donde h es el directori
o raz
del propietario del software de Oracle, admin es un literal, d es el nombre de l
a base de datos y
a es un subdirectorio para cada uno de los archivos de administracin de la base d
e datos.
A continuacin se incluye una lista de estos subdirectorios de archivos de adminis
tracin:
adhoc: Archivos de comandos SQL ad-hoc para una base de datos determinada
arch: Archivos redo log archivados
adump: Archivos de auditora (defina el parmetro de inicializacin AUDIT_FILE_DEST
en el directorio adump; limpie este subdirectorio peridicamente.)
Bdump: Archivos de rastreo de procesos en segundo plano
Cdump: Archivos de volcado principales
Create: Programas utilizados para crear la base de datos
Exp: Archivos de exportacin de la base de datos
Logbook: Archivos que registran el estado y el historial de la base de datos
Pfile: Archivos de parmetros de instancias
udump: Archivos de rastreo de SQL del usuario
Sintaxis de la nomenclatura de archivos: La siguiente regla de nomenclatura para
archivos de
base de datos garantiza que se puedan identificar fcilmente:
Archivos de control: /pm/q/d/controln.ctl
Archivos redo log: /pm/q/d/redon.log
Archivos de datos: /pm/q/d/tn.dbf
Las variables utilizadas en estos nombres de archivo son:
pm: Nombre de punto de montaje como se ha descrito anteriormente
q: Cadena que distingue datos de Oracle del resto de los archivos (normalmente
denominados ORACLE u oradata)
d: Valor del parmetro de inicializacin, DB_NAME (nombre de la base de datos)
t: Nombre de un tablespace de Oracle
n: Cadena de dos dgitos
Nota: No almacene archivos que no sean de control, redo log o de datos asociados
con la base de
datos d en la ruta /pm/q/d/.
Base de Datos Oracle 11g: Taller de Administracin I 2-10
Definicin de Variables de Entorno

ORACLE_BASE: Base de la estructura de


directorios de Oracle para OFA
ORACLE_HOME: Directorio que contiene el software
de Oracle
ORACLE_SID: Nombre de la instancia inicial (ORCL
por defecto)
NLS_LANG: Configuracin del idioma, territorio y
juego de caracteres del cliente
Copyright 2013, Oracle. Todos los derechos reservados.
Definicin de Variables de Entorno
Hay muchas variables de entorno de Oracle y las que se mencionan son muy importa
ntes para
una instalacin correcta y para el uso de una base de datos Oracle. No es necesari
o configurar
ninguna de ellas, pero si las configura antes de la instalacin puede evitar probl
emas en el futuro.
ORACLE_BASE: Especifica la base de la estructura de directorios de Oracle para O
FA.
Su uso es opcional, pero puede facilitar futuras instalaciones y actualizaciones
. Se trata de
una ruta de acceso de directorio similar a la que aparece en este ejemplo:
/u01/app/oracle
ORACLE_HOME: Especifica el directorio que contiene el software de Oracle. Se tra
ta de
una ruta de acceso de directorio similar a la que aparece en este ejemplo:
$ORACLE_BASE/product/10.2.0/db_1
ORACLE_SID: Nombre de la instancia inicial (por defecto, ORCL). Es una cadena de
nmeros y letras que debe comenzar por una letra. Oracle Corporation sugiere que s
e
utilice un mximo de ocho caracteres para los identificadores del sistema.
Base de Datos Oracle 11g: Taller de Administracin I 2-11
Definicin de Variables de Entorno (continuacin)
NLS_LANG: Especifica los valores iniciales de soporte de idioma nacional (NLS) p
ara una
sesin en formato idioma_territorio.juego de caracteres. Por ejemplo,
el valor:
AMERICAN_DENMARK.WE8MSWIN1252
De este modo se define la sesin para que utilice el idioma AMERICAN para los mens
ajes,
la secuencia de ordenacin alfabtica y los nombres de das y de meses de Oracle. El
territorio es DENMARK, que define el formato de hora y fecha y las convenciones
numricas y monetarias. El juego de caracteres WE8MSWIN1252 indica a la Red de Ora
cle
que convierta la informacin de caracteres a este juego. Es una variable de entorn
o en
UNIX y un valor del registro en Windows. Puede consultar los valores reales de N
LS de la
sesin actual mediante:
select * from nls_session_parameters;
Para obtener ms informacin sobre los idiomas, los territorios, los juegos de carac
teres y
el soporte de idiomas vlidos, consulte Globalization Support Guide.
Nota: Una instalacin de Windows toma por defecto los valores de NLS_LANG del
registro cuando la parte idioma se origina a partir del idioma del teclado. Como
consecuencia, la instalacin por defecto de Windows con teclados no americanos obt
endr
el valor no americano en la configuracin de NLS_LANG. A su vez, la variable de se
sin
NLS_SORT ser por defecto distinta de binary , lo que dificulta que el optimizador ut
ilice
ndices basados en caracteres para las sesiones de este nodo.
Base de Datos Oracle 11g: Taller de Administracin I 2-12
Oracle Universal Installer (OUI)
Copyright 2013, Oracle. Todos los derechos reservados.
Oracle Universal Installer (OUI)
Oracle Universal Installer (OUI) es una aplicacin Java que realiza instalaciones
basadas en
componentes y permite distintos niveles de instalaciones basadas en Web, en seri
es y en grupos
integrados, as como de lgica compleja en un nico paquete. El sistema de instalacin s
e puede
transportar fcilmente por todas las plataformas activadas para Java y los problem
as especficos
de las plataformas se pueden encapsular a partir del proceso de instalacin global
. OUI
proporciona las siguientes capacidades para tratar la gestin y distribucin del sof
tware:
Resolucin de dependencia automtica y manejo de lgica compleja
Instalacin desde Web
Instalaciones de componentes y de series
Desinstalacin implcita
Soporte para varios directorios raz de Oracle
Soporte de globalizacin o NLS
Soporte para instalaciones distribuidas
Instalaciones silenciosas desatendidas que utilizan archivos de respuesta
En Windows: Inserte el medio fsico de instalacin de la base de datos Oracle, acced
a al
directorio client y haga clic dos veces en setup.exe para iniciar OUI. Despus de
la
pgina Welcome, seleccione el tipo de instalacin: Instant Client, Administrator, Ru
ntime o
Custom.
Base de Datos Oracle 11g: Taller de Administracin I 2-13
Instalacin del Software de Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Instalacin del Software de Oracle
Puede utilizar OUI para instalar el software de Oracle de la siguiente forma:
1. Conctese a la computadora como miembro del grupo administrativo con autorizacin
para
instalar el software de Oracle y para crear y gestionar la base de datos.
2. Inserte el CD de distribucin de la base de datos en la unidad de CD, o acceda
a la
ubicacin de almacenamiento en zona intermedia de la base de datos Oracle.
3. Inicie OUI. En una ventana XTerm en Linux, introduzca ./runInstaller. Aparece
r
la pgina Oracle Universal Installer.
4. Navegue por las pginas de OUI y especifique los valores previos de instalacin e
n funcin
de su plan de instalacin.
5. Con la informacin inicial, OUI ejecuta las comprobaciones de requisitos.
Base de Datos Oracle 11g: Taller de Administracin I 2-14
Opciones de Configuracin de Base de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Opciones de Configuracin de Base de Datos
El proceso de instalacin contina:
6. Navegue por las pginas de OUI y especifique las opciones de configuracin de la
base de
datos. OUI muestra un resumen de las opciones de instalacin.
7. Haga clic en Install para iniciar la instalacin del software de Oracle.
Si selecciona crear una base de datos inicial como parte de la instalacin, OUI ll
amar a los
siguientes asistentes de configuracin:

Asistente de Configuracin de Red de Oracle: Este asistente configura los componen


tes de
red bsicos durante la instalacin, entre los que se incluyen:
- Nombres de listener y direcciones de protocolo
- Mtodos de nomenclatura que el cliente utilizar para resolver los identificadores
de
conexin a los descriptores de conexin
- Nombres del servicio de red en un archivo tnsnames.ora
- Uso del servidor de directorios
Asistente de Configuracin de Bases de Datos (DBCA) Oracle: Crea la base de datos
inicial seleccionada. Cuando termine este asistente de configuracin, puede desblo
quear
cuentas y cambiar contraseas.
Asistente de Configuracin de iSQL*Plus: Este asistente configura la instancia de
Oracle
Application Server Containers for J2EE (OC4J), la cual utiliza iSQL*Plus y otras
herramientas para conectarse a la base de datos Oracle.
Base de Datos Oracle 11g: Taller de Administracin I 2-15
Ejecucin de Archivos de Comandos de
Configuracin
Copyright 2013, Oracle. Todos los derechos reservados.
Ejecucin de Archivos de Comandos de Configuracin
El proceso de instalacin contina:
8. Cuando se le indique durante una instalacin de Linux o UNIX, ejecute archivos
de
comandos de configuracin adicionales como usuario root. En una ventana XTerm,
introduzca:
$ su
# password: oracle <contrasea raz, no aparece en la ventana >
# cd /u01/app/oracle/oraInventory
# ./orainstRoot.sh
# cd /u01/app/oracle/product/10.2.0/db_1
# ./root.sh
9. Acepte el valor por defecto del directorio bin local durante una instalacin de
Linux o
UNIX. Cuando terminen los archivos de comandos, salga de todas las cuentas y ven
tanas
relacionadas para que termine la instalacin.
Base de Datos Oracle 11g: Taller de Administracin I 2-16
Fin de la Instalacin
Copyright 2013, Oracle. Todos los derechos reservados.
Fin de la Instalacin
10. Cuando termine el proceso de instalacin, anote las direcciones URL para uso f
uturo.
Base de Datos Oracle 11g: Taller de Administracin I 2-17
Opciones Avanzadas de Instalacin

Opciones de almacenamiento de base de datos:


Archivo del sistema
Gestin Automtica de Almacenamiento
Dispositivos raw
Opciones de gestin de base de datos:
Enterprise Manager Grid Control
Enterprise Manager Database Control
Opciones de copia de seguridad y recuperacin
de base de datos
Opciones de notificacin de correo electrnico
Cluster Ready Services
Clonacin
Copyright 2013, Oracle. Todos los derechos reservados.
Opciones Avanzadas de Instalacin
Con OUI, se pueden crear configuraciones que utilicen la Gestin Automtica de
Almacenamiento.
Puede instalar y configurar el marco de Enterprise Manager (EM). Oracle Enterpri
se
Manager Database Control se instala en el mismo directorio raz de Oracle que la b
ase de
datos y se configura para ejecutarse en una instancia autnoma de OC4J. Debe reali
zar una
instalacin independiente para obtener funciones de gestin centrales de EM.
Si decide utilizar Oracle Enterprise Manager Database Control, puede configurar,
de
manera opcional, el uso de la estrategia de copia de seguridad por defecto recom
endada por
Oracle.
Si decide utilizar Oracle Enterprise Manager Database Control durante la instala
cin,
puede configurar Enterprise Manager para que enve alertas por correo electrnico a
la
direccin de correo que especifique. Estas alertas pueden incluir problemas, como
que el
espacio en disco est llegando a un lmite crtico o que una base de datos se haya cer
rado
de manera inesperada.
La instalacin de la base de datos Oracle 11g soporta funciones de RAC, especialme
nte la
instalacin de Cluster Ready Services (CRS).
Los directorios raz de Oracle se pueden clonar mediante la herramienta Enterprise
Configuration Management. Esta herramienta permite a los usuarios crear solicitu
des de
clonacin y, a continuacin, planificarlas y procesarlas. Esta herramienta est dispon
ible a
travs de EM Grid Control.
Base de Datos Oracle 11g: Taller de Administracin I 2-18
Opcin de Instalacin: Modo Silencioso
Para instalar y configurar productos Oracle con OUI en modo
silencioso, realice los siguientes pasos:
1. Cree el archivo oraInst.loc, si no existe ya.
2. Prepare un archivo de respuesta basado en las plantillas
de archivo que se distribuyen con el software de Oracle.
3. Registre un archivo de respuesta:
.runInstaller record -destinationFile
<nombre_archivo>
4. Ejecute OUI en modo silencioso o suprimido.
5. Si es necesario, ejecute NetCA y DBCA en modo
silencioso.
Copyright 2013, Oracle. Todos los derechos reservados.
Opcin de Instalacin: Modo Silencioso
Para instalar y configurar productos Oracle mediante OUI en modo silencioso o su
primido,
realice los siguientes pasos:
1. Cree el archivo oraInst.loc, si no existe ya. Lo ms probable es que el archivo
ya est
en ORACLE_BASE/oraInventory, si ha instalado con anterioridad el software de
Oracle.
2. Prepare un archivo de respuesta: Se suministran plantillas de archivo para ca
da producto y
tipo de instalacin, como por ejemplo enterprise.rsp, standard.rsp y
netca.rsp.
3. Puede utilizar OUI en el modo interactivo para registrar un archivo de respue
sta que pueda
editar y, a continuacin, usarlo para realizar las instalaciones en modo silencios
o o
suprimido. Cree el archivo de respuesta en Linux y UNIX con el siguiente comando
:
.runInstaller record -destinationFile <nombre_archivo>
donde destinationFile es la ubicacin del archivo.
4. Ejecute OUI en modo silencioso o suprimido.
5. Si ha terminado una instalacin de slo software, ejecute el Asistente de Configu
racin de
Red (NetCA) y el Asistente de Configuracin de Bases de Datos (DBCA) de Oracle en
modo silencioso o no interactivo, si resulta necesario.
Para obtener ms informacin, consulte la Oracle Database Installation Guide especfic
a de su
sistema operativo.
Base de Datos Oracle 11g: Taller de Administracin I 2-19
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Describir su rol como DBA y explicar las tareas y


herramientas
Planificar su instalacin, empezando por la
documentacin adecuada
Realizar tareas previas a la instalacin, como la
comprobacin de los requisitos del sistema
Instalar el software mediante OUI
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 2-20
Visin General de la Prctica:
Instalacin del Software de Oracle
En esta prctica se aborda la instalacin del software
de Oracle mediante el uso de Oracle Universal
Installer.
Nota: La realizacin de esta prctica es crtica para
todas las sesiones prcticas posteriores.
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 2-21
Creacin de una Base de Datos Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para
lo siguiente:

Crear una base de datos con el Asistente de


Configuracin de Bases de Datos (DBCA)
Crear una plantilla de diseo de bases de datos
con DBCA
Generar archivos de comandos de creacin de
bases de datos con DBCA
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 3-2
Planificacin de la Base de Datos
Como DBA, debe planificar:

La estructura de almacenamiento lgica de la base de


datos y su implementacin fsica:
Cuntas unidades de disco tiene designadas para
este fin?
Cuntos archivos de datos va a necesitar? (Plan de
crecimiento)
Cuntos tablespaces utilizar?
Qu tipo de informacin se va a almacenar?
Existen requisitos de almacenamiento especiales de
tipo o tamao?
El diseo general de la base de datos
Una estrategia de copia de seguridad para
la base de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Planificacin de la Base de Datos
Es importante planificar el modo en que la estructura de almacenamiento lgica afe
ctar al
rendimiento del sistema y a las diferentes operaciones de gestin de base de datos
. Por ejemplo,
antes de crear los tablespaces de la base de datos, debe saber cuntos archivos de
datos
compondrn cada tablespace, qu tipo de informacin se almacenar en ellos y en qu unidad
es
de disco se almacenarn fsicamente los archivos de datos. Al planificar el almacena
miento
lgico general de la estructura de la base de datos, deben considerarse los efecto
s que tendr el
uso de esta estructura cuando la base de datos se cree y ejecute realmente. Es p
osible que tenga
objetos de base de datos sin requisitos de almacenamiento especiales de tipo o t
amao.
En entornos distribuidos de base de datos, esta etapa de planificacin es extremad
amente
importante. La ubicacin fsica de los datos a los que se accede con ms frecuencia af
ecta
considerablemente al rendimiento de la aplicacin.
Durante la etapa de planificacin, desarrolle una estrategia de copia de seguridad
para la base de
datos. Puede modificar la estructura de almacenamiento lgica o el diseo de la base
de datos
para mejorar la eficacia de las copias de seguridad. Las estrategias de copia de
seguridad se
describen en una leccin posterior.
stos son los tipos de preguntas y consideraciones a los que se enfrentar como DBA
y este
curso (en su totalidad) se ha diseado para ayudarle a resolverlas.
Base de Datos Oracle 11g: Taller de Administracin I 3-3
Bases de Datos: Ejemplos

Almacn de Datos:
Datos de marketing e investigacin
Pagos de impuestos estatales o regionales
Licencias de profesionales (doctores, enfermeras, etc.)
Procesamiento de Transacciones:
Sistema de registro de compra para almacn
Transacciones de cajero automtico
Uso General:
Sistema de facturacin al por menor, por ejemplo,
de una empresa de diseo de software o de una
guardera
Copyright 2013, Oracle. Todos los derechos reservados.
Bases de Datos: Ejemplos
Cada tipo diferente de base de datos tiene sus propios requisitos de almacenamie
nto e instancia
especficos. Su software de base de datos Oracle incluye plantillas para la creacin
de estos tipos
de bases de datos. Las caractersticas de estos ejemplos son las siguientes:

Almacn de Datos: Almacena datos durante largos perodos de tiempo y permite


recuperarlos en operaciones de lectura.
Procesamiento de Transacciones: Incluye numerosas transacciones, aunque normalme
nte
son pequeas.
Uso General: Funciona con transacciones y las almacena durante un perodo de tiemp
o
medio.
Base de Datos Oracle 11g: Taller de Administracin I 3-4
Asistente de Configuracin de Bases de
Datos (DBCA)
Copyright 2013, Oracle. Todos los derechos reservados.
Asistente de Configuracin de Bases de Datos (DBCA)
El Asistente de Configuracin de Bases de Datos (DBCA) se puede utilizar para crea
r, cambiar
la configuracin o suprimir una base de datos. Tambin permite crear una base de dat
os a partir
de una lista de plantillas predefinidas o utilizar una base de datos como muestr
a para crear una
nueva base de datos o plantilla. Esta accin a veces se denomina clonacin de bases d
e datos .
Para llamar a DBCA, realice los siguientes pasos:
1. Conctese a la computadora como miembro del grupo administrativo con autorizacin
para
instalar el software de Oracle.
2. Si es necesario, defina las variables de entorno.
3. Introduzca dbca para llamar a DBCA.
4. Haga clic en Next para continuar.
DBCA le ofrece la opcin de ayudarle con diversas operaciones como, por ejemplo, l
a creacin
de una base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 3-5
Uso de DBCA para Crear una Base de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Crear una Base de Datos
DBCA se puede utilizar para crear una base de datos de la siguiente forma:
1. Seleccione Create a Database en la pgina DBCA Operations para llamar a un asis
tente que
le permita configurar y crear una base de datos.
El asistente le pedir que facilite la informacin de configuracin que se describe en
los
pasos siguientes. En la mayora de las pginas, el asistente ofrecer un valor por def
ecto
que podr aceptar.
2. Seleccione el tipo de plantilla de base de datos que va a utilizar para la cr
eacin de la base
de datos. Hay plantillas para las bases de datos de almacn de datos, uso general
y
procesamiento de transacciones que copian una base de datos preconfigurada, incl
uidos los
archivos de datos. Estos archivos de datos incluyen archivos de control, archivo
s redo log y
archivos de datos para los diversos tablespaces incluidos. Haga clic en Show Det
ails para
ver la configuracin de cada tipo de base de datos.
Para entornos ms complejos, puede que desee seleccionar la opcin Custom Database.
Base de Datos Oracle 11g: Taller de Administracin I 3-6
Uso de DBCA para Crear una Base de Datos
3
4
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Crear una Base de Datos (continuacin)
3. Identificacin de la base de datos: Introduzca el nombre de la base de datos gl
obal (Global
Database Name) con el formato nombre_base_datos.nombre_dominio y el
identificador del sistema (SID). El SID toma el nombre de la base de datos como
valor por
defecto e identifica de forma nica a la instancia que ejecuta la base de datos.
4. Opciones de gestin: Utilice esta pgina para configurar la base de datos de form
a que
pueda gestionarla con Oracle Enterprise Manager. Seleccione el valor por defecto
:
Configure the Database with Enterprise Manager.
Base de Datos Oracle 11g: Taller de Administracin I 3-7
Uso de DBCA para Crear una Base de Datos
5
6
7
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Crear una Base de Datos (continuacin)
5. Credenciales de la base de datos: Utilice este pgina para especificar las cont
raseas de las
cuentas administrativas, como SYS y SYSTEM. En la clase, utilice oracle como
contrasea para todas las cuentas administrativas.
6. Opciones de almacenamiento: Especifique el tipo de mecanismo de almacenamient
o (como
File System) que desee que utilice la base de datos.
7. Ubicaciones de archivos de la base de datos: Seleccione las opciones que nece
site. Oracle
Managed Files (OMF) elimina la necesidad de gestionar directamente los archivos
del
sistema operativo que forman una base de datos Oracle. Especifique operaciones e
n
funcin de los objetos de base de datos en lugar de los nombres de archivos. Para
obtener
ms informacin, consulte la leccin titulada Gestin de Estructuras de Almacenamiento
de Bases de Datos .
Base de Datos Oracle 11g: Taller de Administracin I 3-8
Uso de DBCA para Crear una Base de Datos
8
9
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Crear una Base de Datos (continuacin)
8. Configuracin de recuperacin: Si es necesario, especifique un rea de recuperacin d
e
flash (Specify Flash Recovery Area) y active el proceso de archivado (Enable Arc
hiving).
9. Contenido de la base de datos: Estas pginas ofrecen opciones para seleccionar
componentes, como Sample Schemas, y para usar archivos de comandos personalizado
s.
Base de Datos Oracle 11g: Taller de Administracin I 3-9
Uso de DBCA para Crear una Base de Datos
A
10
B
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Crear una Base de Datos (continuacin)
10. Parmetros de inicializacin: Los separadores de esta pgina ofrecen acceso a pgina
s que
le permiten cambiar los valores de los parmetros de inicializacin por defecto:
- Memory: Utilice esta pgina para definir los parmetros de inicializacin que
controlan el uso de la memoria. Utilice la asignacin de memoria (A) Typical o (B)
Custom.
- Sizing: Para especificar un tamao de bloque, introduzca el tamao en bytes o acep
te
el valor por defecto.
- Character Sets: Utilice esta pgina para especificar los juegos de caracteres de
la base
de datos.
Prctica recomendada: Oracle recomienda (siempre que sea posible) utilizar
Unicode como juego de caracteres de base de datos ya que ofrece una flexibilidad
ptima para soportar tecnologas Web as como numerosos idiomas hablados.
- Connection Mode: Seleccione Dedicated Server Mode o Shared Server Mode. Para
obtener ms informacin, consulte la leccin titulada Configuracin del Entorno de
Red de Oracle .
Nota: Hay diversos parmetros de inicializacin definidos para toda la existencia de
una base de
datos, como los parmetros DB_BLOCK_SIZE y CHARACTER_SET.
Base de Datos Oracle 11g: Taller de Administracin I 3-10
Uso de DBCA para Crear una Base de Datos
11
12
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Crear una Base de Datos (continuacin)
11. Almacenamiento de base de datos: Si ha seleccionado una de las plantillas pr
econfiguradas
para una base de datos, no podr agregar ni eliminar los archivos de control o de
datos.
Nota: Es posible que desee guardar la definicin de la base de datos como archivo
HTML
para facilitar su consulta.
12. Opciones de creacin: Aqu dispone de las opciones para crear la base de datos e
n este
momento, guardar la definicin de la base de datos como plantilla y generar archiv
os de
comandos. Si selecciona todas las opciones, DBCA guarda primero la plantilla de
base de
datos, genera a continuacin los archivos de comandos en el directorio de destino
y, por
ltimo, crea la base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 3-11
Password Management
A
B
C
Copyright 2013, Oracle. Todos los derechos reservados.
Password Management
Cuando termine DBCA, anote la siguiente informacin para referencia futura:
Ubicacin de los archivos log de instalacin (A)
Nombre de la base de datos global (B)
Identificador del sistema (SID) (B)
Ubicacin y nombre del archivo de parmetros de servidor (B)
Direccin URL de Enterprise Manager (C)
Haga clic en Password Management para desbloquear las cuentas de la base de dato
s que piensa
utilizar. Proporcione una contrasea cuando desbloquee una cuenta.
Base de Datos Oracle 11g: Taller de Administracin I 3-12
Creacin de una Plantilla de Diseo de
Bases de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de una Plantilla de Diseo de Bases de Datos
Una plantilla es una definicin de base de datos predefinida que se utiliza como p
unto de inicio
para una nueva base de datos. Si no crea una plantilla como parte del proceso de
creacin de
base de datos, puede hacerlo en cualquier momento con DBCA. Dispone de tres mtodo
s para
crear una plantilla:
A partir de una plantilla existente
A partir de una base de datos existente (slo la estructura)
A partir de una base de datos existente (estructura y datos)
DBCA le gua por los pasos necesarios para crear una plantilla de diseo de bases de
datos.
Base de Datos Oracle 11g: Taller de Administracin I 3-13
Uso de DBCA para Suprimir una Base de Datos
1
2
3
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de DBCA para Suprimir una Base de Datos
Para suprimir (o configurar) una base de datos en UNIX o Linux, debe definir ORA
CLE_SID en
el shell desde el que ejecut DBCA. Para iniciar DBCA, introduzca dbca en una vent
ana de
terminal y haga clic en Next en la pgina Welcome. Para suprimir la base de datos,
realice los
siguientes pasos:
1. En la pgina Operations, seleccione Delete a Database y haga clic en Next.
2. Seleccione la base de datos que desea suprimir (en clase, hist) y haga clic e
n Finish.
3. Haga clic en Yes para confirmar la supresin.
Base de Datos Oracle 11g: Taller de Administracin I 3-14
Uso de DBCA para Suprimir una Base de Datos (continuacin)
El borrado de una base de datos conlleva la eliminacin de sus archivos de datos,
archivos redo
log, archivos de control y archivos de parmetros de inicializacin. La sentencia DR
OP
DATABASE suprime todos los archivos de control y el resto de los archivos de bas
e de datos
enumerados en el archivo de control. Para utilizar la sentencia DROP DATABASE co
rrectamente,
se deben cumplir todas las condiciones siguientes:
La base de datos debe estar montada y cerrada.
La base de datos debe estar montada en modo exclusivo, no en modo compartido.
La base de datos debe estar montada como RESTRICTED.
Este sera un ejemplo de esta sentencia:
DROP DATABASE ;
La sentencia DROP DATABASE no tiene ningn efecto sobre los archivos archive log n
i sobre las
copias normales o de seguridad de la base de datos. Para suprimir estos archivos
se recomienda
utilizar Recovery Manager (RMAN). Si la base de datos est en discos raw, no se su
primirn los
archivos especiales de disco raw.
Base de Datos Oracle 11g: Taller de Administracin I 3-15
Resumen
En esta leccin debe haber aprendido a utilizar DBCA
para:

Crear una base de datos


Crear una plantilla de diseo de bases de datos
Generar archivos de comandos de creacin de
base de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 3-16
Visin General de la Prctica:
Uso de DBCA
En esta prctica se abordan los siguientes temas:

Creacin de la base de datos ORCL mediante


DBCA
Desbloqueo del esquema HR
Nota: La creacin de la base de datos y el desbloqueo
del esquema HR son crticos para todas las sesiones
prcticas posteriores.
Opcional:

Creacin de la plantilla de diseo de la base de


datos ORCL mediante DBCA
Creacin de archivos de comandos de creacin de
bases de datos con DBCA
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 3-17
Gestin de la Instancia de Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para lo
siguiente:

Iniciar y parar la base de datos Oracle y sus


componentes
Utilizar Enterprise Manager (EM)
Acceder a una base de datos con SQL*Plus e
iSQL*Plus
Modificar los parmetros de inicializacin de la base
de datos
Describir las etapas de inicio de la base de datos
Describir las opciones de cierre de la base de datos
Visualizar el log de alertas
Acceder a vistas de rendimiento dinmico
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 4-2
Marco de Gestin
Los tres componentes del marco de gestin
de la base de datos Oracle 11g son:
> Componentes
SQL*Plus
Parmetros Inic.
Inicio de BD
Cierre de BD
Log de Alertas
Vistas Rend.

Instancia de la base de datos


Listener
Interfaz de gestin
Database Control
Agente de gestin (al utilizar Grid Control)
Agente
de gestin
o
bien
Database
Listener
Control
Interfaz de gestin
Copyright 2013, Oracle. Todos los derechos reservados.
Marco de Gestin
Hay tres componentes principales del marco de gestin de la base de datos Oracle:
La instancia de base de datos que se est gestionando
Un listener que permite las conexiones a la base de datos
La interfaz de gestin. Puede ser un agente de gestin que se ejecute en el servidor
de base
de datos (que se conecte a Oracle Enterprise Manager Grid Control) o la versin au
tnoma
de Oracle Enterprise Manager Database Control. Tambin se denomina Consola de Base
de
Datos.
Cada uno de estos componentes se debe iniciar explcitamente para poder utilizar l
os servicios
del componente y se debe cerrar limpiamente al cerrar el servidor que contiene l
a base de datos
Oracle.
El primer componente que se va a iniciar es la interfaz de gestin. Una vez que es
t activada, la
interfaz de gestin se puede utilizar para iniciar los dems componentes.
Base de Datos Oracle 11g: Taller de Administracin I 4-3
Inicio y Parada de Database Control
$ emctl start dbconsole
TZ set to US/Pacific
Oracle Enterprise Manager 11g Database Control Release 10.2.0.1.0
Copyright (c) 2013, 2003 Oracle Corporation. All rights reserved.
http://edrsr9p1.us.oracle.com:1158/em/console/aboutApplication
Starting Oracle Enterprise Manager 11g Database Control
............. started.
----------------Logs are generated in directory
/u01/app/oracle/product/10.2.0/db_1/edrsr9p1.us.oracle.com_orcl/sy
sman/log
$ emctl stop dbconsole
TZ set to US/Pacific
Oracle Enterprise Manager 11g Database Control Release 10.2.0.1.0
Copyright (c) 2013, 2003 Oracle Corporation. All rights reserved.
http://edrsr9p1.us.oracle.com:1158/em/console/aboutApplication
Stopping Oracle Enterprise Manager 11g Database Control ...
... Stopped.
Copyright 2013, Oracle. Todos los derechos reservados.
Inicio y Parada de Database Control
Oracle proporciona una consola de gestin autnoma denominada Database Control para
bases
de datos que no estn conectadas al marco de Grid Control. Cada una de las bases d
e datos que
se gestiona con Database Control tiene una instalacin independiente de Database C
ontrol, y
desde un Database Control cualquiera slo se puede gestionar una base de datos. An
tes de
utilizar Database Control, asegrese de que se ha iniciado el proceso dbconsole.
Para iniciar el proceso dbconsole, utilice el siguiente comando:
emctl start dbconsole
Para parar el proceso dbconsole, utilice el siguiente comando:
emctl stop dbconsole
Para visualizar el estado del proceso dbconsole, utilice el siguiente comando:
emctl status dbconsole
Nota: Puede que necesite acceder al directorio $ORACLE_HOME/bin si este director
io no est
en la ruta de acceso al sistema operativo.
Database Control utiliza un proceso de agente del lado del servidor. Este proces
o de agente se
inicia y se para automticamente cuando se inicia o se para el proceso dbconsole.
Base de Datos Oracle 11g: Taller de Administracin I 4-4
Oracle Enterprise Manager
Copyright 2013, Oracle. Todos los derechos reservados.
Oracle Enterprise Manager
Al instalar una base de datos Oracle, Oracle Universal Installer tambin instala O
racle Enterprise
Manager (Enterprise Manager). Database Control basado en Web se utiliza como her
ramienta
principal para gestionar la base de datos Oracle. Puede acceder a la ayuda en pa
ntalla desde
cualquiera de las pginas para la tarea actual. Puede acceder a enlaces en la mayo
ra de las
situaciones, siempre que haya informacin ms especfica sobre el contenido de una pgin
a.
Aunque en ocasiones es posible que desee escribir y ejecutar comandos creados pe
rsonalmente,
Enterprise Manager proporciona una interfaz grfica para realizar casi cualquier t
area que tenga
que realizar como administrador de base de datos (DBA). La visualizacin de resmene
s de
alertas y grficos de rendimiento, la creacin y modificacin de objetos y la realizac
in de
copias de seguridad y recuperacin son algunas de las operaciones que puede realiz
ar con
Enterprise Manager.
Base de Datos Oracle 11g: Taller de Administracin I 4-5
Acceso a Oracle Enterprise Manager
Copyright 2013, Oracle. Todos los derechos reservados.
Acceso a Oracle Enterprise Manager
Abra el explorador Web y escriba la siguiente direccin URL:
http://nombre_host:nmero_puerto/em
Si la base de datos est:

Activa: Enterprise Manager muestra la pgina de conexin a Database Control. Conctese


a la base de datos con un nombre de usuario que tenga autorizacin para acceder a
Database Control. En principio ser SYS, SYSMAN o SYSTEM. Utilice la contrasea que
ha
especificado para la cuenta durante la instalacin de la base de datos. En la opcin
Connect
As, seleccione SYSDBA o SYSOPER para conectarse a la base de datos con privilegi
os
especiales de administracin de base de datos.
Cada: Enterprise Manager muestra la pgina Startup/Shutdown y Perform Recovery.
Si ste es el caso, haga clic en el botn Startup/Shutdown. A continuacin, se le pide
que
introduzca los nombres de usuario y contraseas de conexin del host y de la base de
datos
destino.
Nota: Si tiene problemas para iniciar Enterprise Manager, asegrese de que se ha i
niciado un
listener.
Base de Datos Oracle 11g: Taller de Administracin I 4-6
Pgina Inicial de la Base de Datos
Pginas de propiedades
Copyright 2013, Oracle. Todos los derechos reservados.
Pgina Inicial de la Base de Datos
En la pgina inicial de la base de datos se muestra el estado actual de la base de
datos al
presentar una serie de mtricas que ilustran el estado general de la base de datos
. Con las pginas
de propiedades, que tambin se conocen como separadores, puede acceder a las pginas
Performance, Administration y Maintenance para gestionar la base de datos.
En la pgina inicial de la base de datos podr ver los siguientes datos de rendimien
to y estado
relativos a la instancia de la base de datos:
Nombre de la instancia, versin de la base de datos, ubicacin del directorio raz de
Oracle,
opciones de recuperacin del medio fsico y otros datos relevantes acerca de la inst
ancia.
Disponibilidad de la instancia actual.
Alertas pendientes.
Informacin sobre el rendimiento de la sesin y de SQL.
Mtricas de uso de espacio clave.
Enlaces de despliegue (por ejemplo, LISTENER_<nombre_host>) para proporcionar
niveles superiores de detalle.
Base de Datos Oracle 11g: Taller de Administracin I 4-7
Uso de SQL*Plus e iSQL*Plus
para Acceder a las
Bases de Datos
SQL*Plus e iSQL*Plus proporcionan interfaces
adicionales a la base de datos para:
Componentes
> SQL*Plus
Parmetros Inic.
Inicio de BD
Cierre de BD
Log de Alertas
Vistas Rend.

Realizar operaciones de gestin de la base de


datos
Ejecutar comandos SQL para consultar, insertar,
actualizar y suprimir datos en la base de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de SQL*Plus e iSQL*Plus para Acceder a las Bases de Datos
Adems de Enterprise Manager, puede utilizar otras herramientas de Oracle, como SQ
L*Plus e
iSQL*Plus, para emitir sentencias SQL. Estas herramientas le permiten realizar m
uchas de las
operaciones de gestin de la base de datos as como seleccionar, insertar, actualiza
r o suprimir
datos en la base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 4-8
Uso de iSQL*Plus
1
3
2
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de iSQL*Plus
iSQL*Plus es una interfaz basada en explorador para una base de datos Oracle. Es
un
componente del producto SQL*Plus. iSQL*Plus dispone de un proceso del listener d
el servidor
que se debe iniciar para poder conectarse a un explorador. Para iniciar este pro
ceso de servidor,
utilice:
isqlplusctl start
Una vez iniciado el proceso de servidor, especifique la siguiente URL en un expl
orador para
conectarse a l:
http://nombre_host:puerto/isqlplus
El nmero de puerto utilizado por iSQL*Plus suele ser 5560 a menos que Oracle Univ
ersal
Installer (OUI) detecte algo que ya est utilizando dicho puerto. Busque en
$ORACLE_HOME/install/portlist.ini el puerto que utiliza iSQL*Plus.
Base de Datos Oracle 11g: Taller de Administracin I 4-9
Configuracin de iSQL*Plus
para el Acceso de SYSDBA y SYSOPER
Para que un usuario pueda conectarse a iSQL*Plus como
SYSDBA o SYSOPER debe configurar al usuario en el gestor
de usuarios de OC4J realizando los siguientes pasos:
1. Crear un usuario
2. Otorgar el rol webDba al usuario
$ cd $ORACLE_HOME/oc4j/j2ee/isqlplus/\
> application-deployments/isqlplus
$JAVA_HOME/bin/java \
> -Djava.security.properties=\
> $ORACLE_HOME/oc4j/j2ee/home/config/jazn.security.props \
> -jar $ORACLE_HOME/oc4j/j2ee/home/jazn.jar \
> -user "iSQL*Plus DBA/admin" -password welcome -shell
JAZN> adduser "iSQL*Plus DBA" username password
JAZN> grantrole webDba "iSQL*Plus DBA" username
Copyright 2013, Oracle. Todos los derechos reservados.
Configuracin de iSQL*Plus para el Acceso de SYSDBA y SYSOPER
Cuando aparezca la pgina iSQL*Plus Connection Role, observe que los roles SYSOPER
y
SYSDBA necesitan una configuracin y una autenticacin especiales por motivos de seg
uridad.
Para ello, debe configurar un usuario en el gestor de usuarios de Oracle Applica
tion Server
Containers for J2EE (OC4J) y otorgar al usuario acceso al rol webDba. Para ello,
realice los
siguientes pasos. Tenga en cuenta que la variable de entorno JAVA_HOME OS se deb
e definir
en $ORACLE_HOME/jdk.
1. Cambie al directorio correcto.
cd $ORACLE_HOME/oc4j/j2ee/isqlplus/\
application-deployments/isqlplus
2. Ejecute el shell de JAZN:
$JAVA_HOME/bin/java \
-Djava.security.properties=\
$ORACLE_HOME\
/oc4j/j2ee/home/config/jazn.security.props \
-jar $ORACLE_HOME/oc4j/j2ee/home/jazn.jar \
-user "iSQL*Plus DBA/admin" \
-password welcome -shell
Base de Datos Oracle 11g: Taller de Administracin I 4-10
Configuracin de iSQL*Plus para el Acceso de SYSDBA y SYSOPER (continuacin)
3. Cree un usuario y seleccione un nombre de usuario y contrasea:
JAZN> adduser "iSQL*Plus DBA" username password
4. Otorgue el rol webDba al usuario:
JAZN> grantrole webDba "iSQL*Plus DBA" username
5. Salga del shell de JAZN:
JAZN> exit
Base de Datos Oracle 11g: Taller de Administracin I 4-11
Uso de SQL*Plus
SQL*Plus:

Es una herramienta de lnea de comandos


Se utiliza de forma interactiva o en modo de lotes
$ sqlplus hr/hr
SQL*Plus: Release 10.2.0.1.0 - Production on Mon May 25 12:37:21 2013
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
SQL> SELECT last_name FROM employees;
LAST_NAME
-------------------------
Abel
Ande
Atkinson
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de SQL*Plus
Puede utilizar la interfaz de lnea de comandos para que SQL*Plus escriba comandos
SQL*Plus,
SQL y PL/SQL para lo siguiente:
Introducir, editar, ejecutar, almacenar, recuperar y guardar comandos SQL y bloq
ues
PL/SQL
Formatear, calcular, almacenar e imprimir resultados de consultas
Enumerar definiciones de columna para cualquier tabla
Enviar mensajes a un usuario final y aceptar sus respuestas
Realizar la administracin de la base de datos
Para iniciar SQL*Plus, realice los siguientes pasos:
1. Abra una ventana de terminal.
2. En el prompt de la lnea de comandos, introduzca el comando SQL*Plus con el for
mato:
$ sqlplus /nolog
3. Introduzca connect seguido del usuario que desea utilizar para conectarse.
4. Cuando se le indique, introduzca la contrasea del usuario.
SQL*Plus se inicia y se conecta a la base de datos por defecto.
Base de Datos Oracle 11g: Taller de Administracin I 4-12
exit
Llamada a SQL*Plus desde un Archivo de
Comandos del Shell
$ ./batch_sqlplus.sh
SQL*Plus: Release 10.2.0.1.0 - Production on Mon May 25 12:47:44 2013
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Salida
Connected to:
Oracle Database 11g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
# Name of this file: batch_sqlplus.sh
SQL> # Count employees and give raise.
COUNT(*) sqlplus hr/hr <<EOF
---------- select count(*) from employees;
107 update employees set salary =
SQL> salary*1.10;
107 rows updated. commit;
SQL> quit
Commit complete. EOF
SQL> Disconnected from Oracle Database 11g Enterprise Edition Release
10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
[oracle@EDRSR9P1 oracle]$
Copyright 2013, Oracle. Todos los derechos reservados.
Llamada a SQL*Plus desde un Archivo de Comandos del Shell
Para llamar a SQL*Plus desde un archivo de comandos del shell o un archivo BAT,
llame a
sqlplus y utilice la sintaxis de archivos de comandos del sistema operativo para
transferir
parmetros.
En este ejemplo, se ejecutan las sentencias SELECT, UPATE y COMMIT, antes de que
SQL*Plus
devuelva el control al sistema operativo.
Base de Datos Oracle 11g: Taller de Administracin I 4-13
Llamada a un Archivo de Comandos SQL
desde SQL*Plus
script.sql
select * from departments where location_id = 1400;
quit
Salida
$ sqlplus hr/hr @script.sql
SQL*Plus: Release 10.2.0.1.0 - Production on Mon May 25 12:57:02 2013
Copyright (c) 1982, 2013, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
DEPARTMENT_ID DEPARTMENT_NAME MANAGER_ID LOCATION_ID
------------- ------------------------------ ---------- -----------
60 IT 103 1400
Disconnected from Oracle Database 11g Enterprise Edition Release
10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options
$
Copyright 2013, Oracle. Todos los derechos reservados.
Llamada a un Archivo de Comandos SQL desde SQL*Plus
Puede llamar a un archivo de comandos SQL existente desde SQL*Plus. Puede hacerl
o en la
lnea de comandos cuando llame por primera vez a SQL*Plus, como se muestra en la d
iapositiva.
Tambin se puede hacer desde una sesin de SQL*Plus, slo tiene que utilizar el operad
or @ .
Por ejemplo, aqu se ejecuta el archivo de comandos desde una sesin ya establecida
de
SQL*Plus:
SQL> @script.sql
Base de Datos Oracle 11g: Taller de Administracin I 4-14
Componentes
Archivos de Parmetros
de Inicializacin
SQL*Plus
> Parmetros Inic.
Inicio de BD
Cierre de BD
Log de Alertas
Vistas Rend.
spfileorcl.ora
Copyright 2013, Oracle. Todos los derechos reservados.
Archivos de Parmetros de Inicializacin
Al iniciar la instancia, se lee un archivo de parmetros de inicializacin. Hay dos
tipos de
archivos de parmetros:

Archivo de parmetros del servidor: Es el tipo preferido de archivo de parmetros de


inicializacin. Es un archivo binario en el que el servidor de la base de datos pu
ede escribir
y leer y nunca se debe editar manualmente. Reside en el servidor en el que se es
t
ejecutando la base de datos Oracle y es persistente tras el cierre e inicio. A m
enudo se le
denomina archivo de parmetros del servidor (SPFILE). El nombre por defecto de est
e
archivo, que se busca automticamente al inicio, es spfile<SID>.ora.
Archivo de parmetros de inicializacin de texto: Este tipo de archivo de parmetros d
e
inicializacin lo puede leer el servidor de la base de datos, pero no puede escrib
ir en l. Los
valores de los parmetros de inicializacin se deben definir y cambiar de manera man
ual
mediante el uso de un editor de texto para que, de esa forma, sean persistentes
tras el cierre
e inicio. El nombre por defecto de este archivo, que se busca automticamente al i
nicio si
no se encuentra SPFILE, es init<SID>.ora.
Se recomienda crear un SPFILE como medio dinmico de mantener los parmetros de
inicializacin. El uso de un SPFILE permite almacenar y gestionar los parmetros de
inicializacin de forma persistente en un archivo de disco del lado del servidor.
Base de Datos Oracle 11g: Taller de Administracin I 4-15
Simplified Initialization Parameters
Bsicos
CONTROL_FILES
DB_BLOCK_SIZE
PROCESSES
UNDO_MANAGEMENT
Avanzados
DB_CACHE_SIZE
DB_FILE_MULTIBLOCK
_READ_COUNT
SHARED_POOL_SIZE
Copyright 2013, Oracle. Todos los derechos reservados.
Parmetros de Inicializacin Simplificados
Los parmetros de inicializacin se dividen en dos grupos: bsicos y avanzados.
En la mayora de los casos es necesario configurar y ajustar slo los 32 parmetros bsi
cos para
obtener un rendimiento razonable en la base de datos. En muy pocas ocasiones ser
necesario
modificar los parmetros avanzados para obtener un rendimiento ptimo.
Los parmetros bsicos son los que se definen para mantener una buena ejecucin de la
base de
datos. El resto de los parmetros se consideran avanzados.
Los ejemplos de parmetros bsicos incluyen nombres de directorio o destinos de tipos
de
archivos especficos: AUDIT_FILE_DEST, BACKGROUND_DUMP_DEST,
CORE_DUMP_DEST, DB_CREATE_FILE_DEST, DB_CREATE_ONLINE_LOG_DEST_n,
DB_RECOVERY_FILE_DEST y USER_DUMP_DEST.
Parmetros de Inicializacin: Ejemplos
El parmetro CONTROL_FILES especifica uno o ms nombres de archivo de control. Oracl
e
recomienda multiplexar y duplicar los archivos de control. El rango de valores d
e este parmetro
oscila entre 1 y 8 nombres de archivo (con nombres de ruta de acceso). El rango
por defecto
depende del sistema operativo.
Base de Datos Oracle 11g: Taller de Administracin I 4-16
Parmetros de Inicializacin Simplificados (continuacin)
Parmetros de Inicializacin: Ejemplos (continuacin)
El parmetro DB_BLOCK_SIZE especifica el tamao (en bytes) de un bloque de base de d
atos
Oracle. Este valor se define durante la creacin de la base de datos y no se puede
cambiar
posteriormente. Rango de valores: 1024 65536 (depende del sistema operativo). Va
lor por
defecto: 8 K (depende del sistema operativo).
El parmetro DB_CACHE_SIZE especifica el tamao de la cach de buffer del bloque estnda
r.
Rango de valores: Al menos 16 MB. Valor por defecto: 48 MB
El parmetro DB_FILE_MULTIBLOCK_READ_COUNT especifica el nmero mximo de
bloques ledos durante una operacin de entrada/salida (E/S) que implica una explora
cin
secuencial completa. Rango de valores: Depende del sistema operativo. Valor por
defecto: 8.
El parmetro DB_FILES especifica el nmero mximo de archivos de base de datos que se
puede abrir para esta base de datos. Rango de valores: MAXDATAFILES (depende del
sistema
operativo). Valor por defecto: Depende del sistema operativo (200 en Solaris).
El parmetro PGA_AGGREGATE_TARGET especifica la cantidad de memoria de rea Global d
e
Programa (PGA) asignada a todos los procesos del servidor conectados a la instan
cia. Defina
este parmetro en un valor positivo antes de activar la definicin automtica de las re
as de
trabajo. Esta memoria no reside en el rea Global del Sistema (SGA). La base de da
tos utiliza
este parmetro como cantidad de destino de la memoria PGA que se va a utilizar. Al
definir este
parmetro, reste la SGA de la memoria total del sistema disponible para la instanc
ia de Oracle.
La memoria restante se puede asignar a PGA_AGGREGATE_MEMORY. Rango de valores:
Enteros ms la letra K, M o G para identificar este lmite en kilobytes, megabytes o
gigabytes.
El valor mnimo es 10M y el mximo 400G. Valor por defecto: Not Specified , que signifi
ca
que el ajuste automtico de las reas de trabajo se ha desactivado completamente.
El parmetro PROCESSES especifica el nmero mximo de procesos de usuario del sistema
operativo que puede conectarse al mismo tiempo a un servidor de Oracle. Este val
or se debe
permitir para todos los procesos en segundo plano. Rango de valores: de 6 hasta
un valor
dependiente del sistema operativo. Valor por defecto: Depende del parmetro
PARALLEL_MAX_SERVERS.
El parmetro SHARED_POOL_SIZE especifica el tamao del pool compartido en bytes.
El pool compartido contiene objetos como cursores compartidos, procedimientos al
macenados,
estructuras de control y buffers de mensajes de ejecucin en paralelo. Los valores
grandes
pueden mejorar el rendimiento en sistemas de varios usuarios. Rango de valores:
300 KB
(depende del sistema operativo). Valor por defecto: Si es de 64 bits, 64 MB; de
lo contrario,
16 MB.
El parmetro UNDO_MANAGEMENT especifica qu modo debe utilizar el sistema para la ge
stin
del espacio de deshacer. Cuando se define en AUTO, la instancia se inicia en el
modo Deshacer
Gestionado por el Sistema (SMU). En caso contrario, se inicia en el modo Deshace
r de Rollback
(RBU). En el modo RBU, el espacio de deshacer se asigna externamente como segmen
tos de
rollback. En el modo SMU, el espacio de deshacer se asigna externamente como tab
lespaces de
deshacer. Rango de valores: AUTO o MANUAL. Valor por defecto: Si se omite el parm
etro
UNDO_MANAGEMENT cuando se inicia la primera instancia, se utiliza el valor por d
efecto
MANUAL y la instancia se inicia en modo RBU. Si no es la primera instancia, la i
nstancia se
inicia en el mismo modo de deshacer que las otras instancias existentes.
Base de Datos Oracle 11g: Taller de Administracin I 4-17
Visualizacin y Modificacin
de Parmetros de Inicializacin
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin y Modificacin de Parmetros de Inicializacin
Puede utilizar Enterprise Manager para visualizar y modificar parmetros de inicia
lizacin si
hace clic en All Initialization Parameters en la regin Database Configuration de
la pgina con
separadores Database Administration.
Base de Datos Oracle 11g: Taller de Administracin I 4-18
Componentes
Inicio y Cierre de la
Base de Datos
SQL*Plus
Parmetros Inic.
> Inicio de BD
Cierre de BD
Log de Alertas
Vistas Rend.
o bien
Copyright 2013, Oracle. Todos los derechos reservados.
Inicio y Cierre de la Base de Datos
Al hacer clic en la opcin de inicio o cierre, se le piden las credenciales que se
utilizan para
conectar tanto al host (la computadora en la que reside la base de datos) como a
la propia base de
datos. Indique las credenciales.
A continuacin, puede hacer clic en Advanced Options para cambiar las opciones de
inicio o el
modo de cierre si es necesario. Asimismo, puede hacer clic en Show SQL para ver
las sentencias
SQL que se utilizarn para el inicio o el cierre.
Base de Datos Oracle 11g: Taller de Administracin I 4-19
Inicio de una Instancia
de Base de Datos Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Inicio de una Instancia de Base de Datos Oracle
Si la base de datos no se ha iniciado al acceder a la pgina Enterprise Manager Da
tabase Control,
haga clic en Startup para realizar el inicio. Indique las credenciales del host
y, de manera
opcional, seleccione el modo de inicio.
Base de Datos Oracle 11g: Taller de Administracin I 4-20
Inicio de una Instancia de Base de Datos Oracle:
NOMOUNT
OPEN
STARTUP
MOUNT
NOMOUNT
Se inicia
la instancia
SHUTDOWN
Copyright 2013, Oracle. Todos los derechos reservados.
Inicio de una Instancia de Base de Datos Oracle: NOMOUNT
Al iniciar la instancia de la base de datos, se selecciona el estado en el que s
e inicia. En los
siguientes supuestos se describen las distintas etapas de inicio de una instanci
a.
Normalmente, una instancia slo se inicia en modo NOMOUNT durante la creacin de la
base de
datos, durante la nueva creacin de archivos de control o en algunos supuestos de
copia de
seguridad y recuperacin.
El inicio de una instancia incluye las siguientes tareas:
Bsqueda en <oracle_home>/database de un archivo con un nombre especfico en
este orden:
-
spfile<SID>.ora
- Si no se encuentra, spfile.ora
- Si no se encuentra, init<SID>.ora
ste es el archivo que contiene los parmetros de inicializacin de la instancia.
Al especificar el parmetro PFILE con STARTUP se sustituye el comportamiento
por defecto.
Asignacin de SGA
Inicio de los procesos en segundo plano
Apertura del archivo alert<SID>.log y de los archivos de rastreo
Nota: SID es el identificador del sistema, que identifica la instancia (por ejem
plo, ORCL).
Base de Datos Oracle 11g: Taller de Administracin I 4-21
Inicio de una Instancia de Base de Datos Oracle:
MOUNT
OPEN
STARTUP
MOUNT
El archivo de
control se abre
NOMOUNT
para esta
instancia
Se inicia
la instancia
SHUTDOWN
Copyright 2013, Oracle. Todos los derechos reservados.
Inicio de una Instancia de Base de Datos Oracle: MOUNT
El montaje de una base de datos incluye las siguientes tareas:
Asociacin de una base de datos con una instancia iniciada previamente
Bsqueda y apertura de los archivos de control especificados en el archivo de parme
tros
Lectura de los archivos de control para obtener los nombres y los estados de los
archivos de
datos y los archivos redo log en lnea. Sin embargo, en esta fase no se realizan
comprobaciones para verificar la existencia de los archivos de datos y los archi
vos redo log
en lnea
Parar realizar operaciones de mantenimiento especficas, inicie una instancia y mo
nte una base
de datos sin abrir la base de datos.
Por ejemplo, la base de datos se debe montar pero sin estar abierta mientras se
llevan a cabo las
siguientes tareas:
Cambio de nombre de los archivos de datos (el nombre de los archivos de datos de
un
tablespace offline se puede cambiar con la base de datos abierta)
Activacin y desactivacin de opciones de archivado de archivos redo log en lnea
Realizacin de una recuperacin completa de la base de datos
Nota: Es posible dejar una base de datos en el modo MOUNT aunque se haya realiza
do una
solicitud OPEN. El motivo puede ser que la base de datos se necesita recuperar d
e alguna forma.
Base de Datos Oracle 11g: Taller de Administracin I 4-22
Inicio de una Instancia de Base de Datos Oracle:
OPEN
OPEN
STARTUP
MOUNT
Todos los archivos se
abren como se describe
en el archivo de control
de esta instancia
El archivo de
control se abre
NOMOUNT
para esta
instancia
Se inicia
la instancia
SHUTDOWN
Copyright 2013, Oracle. Todos los derechos reservados.
Inicio de una Instancia de Base de Datos Oracle: OPEN
La operacin normal de la base de datos implica que se inicia una instancia y que
la base de
datos se monta y se abre. Con el funcionamiento normal de la base de datos, cual
quier usuario
vlido puede conectarse a la base de datos y realizar operaciones normales de acce
so a los datos.
La apertura de una base de datos incluye las siguientes tareas:
Apertura de los archivos de datos en lnea
Apertura de los archivos redo log en lnea
Si alguno de los archivos de datos o archivos redo log en lnea no est presente cua
ndo se intenta
abrir la base de datos, el servidor de Oracle devuelve un error.
Durante esta etapa final, el servidor de Oracle verifica que todos los archivos
de datos y archivos
redo log en lnea se pueden abrir y comprueba la consistencia de la base de datos.
Si es
necesario, el proceso en segundo plano del monitor del sistema (SMON) inicia la
recuperacin
de la instancia.
Puede iniciar una instancia de la base de datos en modo restringido para que est
disponible slo
a los usuarios que tienen privilegios administrativos. Para iniciar una instanci
a en modo
restringido, seleccione la opcin Restrict access to database en la pgina Advanced St
artup
Options.
Base de Datos Oracle 11g: Taller de Administracin I 4-23
Componentes
Cierre de una Instancia de
Base de Datos Oracle
SQL*Plus
Parmetros Inic.
Inicio de BD
> Cierre de BD
Log de Alertas
Vistas Rend.
Copyright 2013, Oracle. Todos los derechos reservados.
Cierre de una Instancia de Base de Datos Oracle
Si ya se ha iniciado la instancia cuando accede a la pgina Enterprise Manager Dat
abase Control,
puede hacer clic en el botn Shutdown para cerrar la instancia. Si a continuacin ha
ce clic en el
botn Advanced Options, puede seleccionar el modo de cierre: Normal, Transactional
,
Immediate o Abort.
Base de Datos Oracle 11g: Taller de Administracin I 4-24
Modo de Cierre A I T N Permite nuevas conexiones No No No No Espera hasta que te
rminen las sesiones actuales No No No S Espera hasta que terminen las transaccion
es actuales No No S S Aplica un punto de control y cierra los archivos No S S S
Modos de Cierre
Modo de cierre:

A = ABORT
I = IMMEDIATE
T = TRANSACTIONAL
N = NORMAL
Copyright 2013, Oracle. Todos los derechos reservados.
Modos de Cierre
Los modos de cierre se ajustan progresivamente a la actividad actual segn el sigu
iente orden:
ABORT: Realiza la cantidad mnima de trabajo antes del cierre. Puesto que esta opc
in
necesita recuperacin antes del inicio, utilcela slo cuando sea necesario. Normalmen
te se
utiliza cuando no funciona ninguna otra forma de cierre, cuando hay problemas al
iniciar la
instancia o cuando necesita cerrar inmediatamente porque se ha producido una sit
uacin
inminente, como el aviso de un corte del suministro elctrico en unos segundos.
IMMEDIATE: Es la opcin que ms se utiliza. Se realiza un rollback de las transaccio
nes
sin confirmar.
TRANSACTIONAL: Permite que finalicen las transacciones.
NORMAL: Espera a que las sesiones se desconecten.
Si considera la cantidad de tiempo que se tarda en realizar el cierre, descubrir
que ABORT es el
mtodo ms rpido y que NORMAL es el ms lento.
Base de Datos Oracle 11g: Taller de Administracin I 4-25
Opciones de SHUTDOWN
Durante el descenso:
Se realiza un
Durante
Durante el
ascenso:

rollback de los
cambios sin
confirmar para
IMMEDIATE
La cach de
buffers de la
base de datos
SHUTDOWN
NORMAL
o bien
SHUTDOWN
TRANSACTIONAL
o bien
SHUTDOWN
IMMEDIATE

No hay
recuperacin
de instancias
se escribe en
los archivos
de datos

Se liberan
los recursos
Base de datos consistente
(base de datos limpia)
Copyright 2013, Oracle. Todos los derechos reservados.
Opciones de SHUTDOWN
SHUTDOWN NORMAL
El modo de cierre por defecto es normal. El cierre normal de la base de datos co
ntina con las
condiciones siguientes:
No se pueden realizar nuevas conexiones.
El servidor de Oracle espera a que todos los usuarios se desconecten antes de co
mpletar el
cierre.
Los buffers de la base de datos y de redo se escriben en disco.
Los procesos en segundo plano se terminan y el SGA se elimina de la memoria.
El servidor de Oracle cierra y desmonta la base de datos antes de cerrar la inst
ancia.
El siguiente inicio no necesita recuperacin de instancias.
SHUTDOWN TRANSACTIONAL
Un cierre transaccional impide que los clientes pierdan los datos, incluyendo lo
s resultados de su
actividad actual. El cierre transaccional de la base de datos contina con las con
diciones
siguientes:
Ningn cliente puede iniciar una nueva transaccin en esta instancia en particular.
Un cliente se desconecta cuando el cliente finaliza la transaccin en curso.
Cuando han finalizado todas las transacciones, se produce inmediatamente un cier
re.
El siguiente inicio no necesita recuperacin de instancias.
Base de Datos Oracle 11g: Taller de Administracin I 4-26
Opciones de SHUTDOWN (continuacin)
SHUTDOWN IMMEDIATE
El cierre inmediato de la base de datos contina con las condiciones siguientes:
Las sentencias SQL actuales que est procesando la base de datos Oracle no se comp
letan.
El servidor de Oracle no espera a que se desconecten los usuarios que estn conect
ados
actualmente a la base de datos.
El servidor de Oracle realiza un rollback de transacciones activas y desconecta
todos los
usuarios conectados.
El servidor de Oracle cierra y desmonta la base de datos antes de cerrar la inst
ancia.
El siguiente inicio no necesita recuperacin de instancias.
Base de Datos Oracle 11g: Taller de Administracin I 4-27
Opciones de SHUTDOWN
Durante el descenso:
Los buffers
modificados
no se escriben en
los archivos de
datos
No se realiza un
rollback de los
cambios sin
confirmar
Durante
SHUTDOWN ABORT
o bien
Fallo de la instancia
o bien
STARTUP FORCE
Durante el ascenso:
Los archivos
redo log en lnea
se utilizan para
volver a aplicar
los cambios
Los segmentos
de deshacer se
utilizan para
realizar un
rollback de los
cambios sin
confirmar

Base de datos inconsistente


Se liberan los
recursos
(base de datos sucia)
Copyright 2013, Oracle. Todos los derechos reservados.
Opciones de SHUTDOWN (continuacin)
SHUTDOWN ABORT
Si las opciones de cierre NORMAL e IMMEDIATE no funcionan, puede abortar la inst
ancia de
base de datos actual. El aborto de una instancia contina con las condiciones sigu
ientes:
Las sentencias SQL actuales que est procesando el servidor de Oracle se terminan
inmediatamente.
El servidor de Oracle no espera a que se desconecten los usuarios que estn conect
ados
actualmente a la base de datos.
Los buffers de la base de datos y de redo no se escriben en disco.
No se realiza un rollback de las transacciones sin confirmar.
La instancia se termina sin cerrar los archivos.
La base de datos no se cierra ni se desmonta.
El siguiente inicio necesita la recuperacin de instancias, lo que se produce
automticamente.
Nota: No se recomienda realizar una copia de seguridad de una base de datos con
estado
inconsistente.
Base de Datos Oracle 11g: Taller de Administracin I 4-28
Uso de SQL*Plus para el Inicio
y el Cierre
[oracle@EDRSR9P1 oracle]$ sqlplus dba1/oracle as sysdba
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup
ORACLE instance started.
Total System Global Area
Fixed Size
Variable Size
Database Buffers
Redo Buffers
285212672 bytes
1218472 bytes
250177624 bytes
33554432 bytes
262144 bytes
Database mounted.
Database opened.
SQL>
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de SQL*Plus para el Inicio y el Cierre
Tambin puede utilizar SQL*Plus para iniciar, cerrar o cambiar el estado de la bas
e de datos.
Para usar SQL*Plus en estas tareas, conctese como SYSDBA o SYSOPER. A continuacin,
utilice los comandos equivalentes de la funcin de Enterprise Manager descrita ant
eriormente:
SHUTDOWN [NORMAL | TRANSACTIONAL | IMMEDIATE | ABORT ]
STARTUP [FORCE] [RESTRICT] [MOUNT | OPEN | NOMOUNT]
Esto le permite incluir las operaciones de inicio y cierre como parte de un arch
ivo de comandos
o un proceso por lotes que realice tareas en la base de datos, para las que es n
ecesario que la base
de datos se encuentre en un estado especfico.
Base de Datos Oracle 11g: Taller de Administracin I 4-29
Componentes
Visualizacin del
Log de Alertas
SQL*Plus
Parmetros Inic.
Inicio de BD
Cierre de BD
> Log de Alertas
Vistas Rend.
Pgina Inicial de la Base de Datos >
Regin Related Links > Alert Log Content
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin del Log de Alertas
Cada base de datos tiene un archivo alert_<sid>.log. Est en el servidor con la ba
se de
datos y est almacenado en el directorio especificado con el parmetro de inicializa
cin
background_dump_dest. El archivo de alertas de una base de datos es un log crono
lgico
de mensajes y errores, incluidos los siguientes:
Cualquier parmetro de inicializacin no por defecto utilizado en el inicio
Todos los errores internos (ORA-600), errores de corrupcin de bloques (ORA-1578)
y
errores de interbloqueo (ORA-60) que se produzcan
Operaciones administrativas, como las sentencias SQL CREATE, ALTER, DROP
DATABASE y TABLESPACE, y las sentencias de Enterprise Manager o SQL*Plus
STARTUP, SHUTDOWN, ARCHIVE LOG y RECOVER
Varios mensajes y errores relacionados con las funciones del servidor compartido
y los
procesos del distribuidor
Errores durante la actualizacin automtica de una vista materializada
Enterprise Manager controla el archivo log de alertas y notifica los errores crti
cos. Tambin
puede consultar el log para ver errores no crticos y mensajes informativos. El ar
chivo puede
crecer hasta alcanzar un tamao difcil de gestionar. Puede realizar una copia de se
guridad del
archivo de alerta y suprimir el archivo de alerta actual cada cierto tiempo. Cua
ndo la base de
datos intenta de nuevo escribir en el archivo de alerta, crea uno nuevo.
Base de Datos Oracle 11g: Taller de Administracin I 4-30
Visualizacin del Historial de Alertas
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin del Historial de Alertas
En la pgina Alert History se muestra un diagrama con el historial de alertas de l
a base de datos
actual en los segmentos de tiempo que designe. Una alerta indica un problema pot
encial: puede
ser un umbral de advertencia o crtico de una mtrica controlada, o puede ser un des
tino que ya
no est disponible.
Base de Datos Oracle 11g: Taller de Administracin I 4-31
Componentes
Vistas de Rendimiento
Dinmico
Las vistas de rendimiento
dinmico proporcionan acceso
SQL*Plus
Parmetros Inic.
Inicio de BD
Cierre de BD
Log de Alertas
> Vistas Rend.
a informacin sobre las
condiciones y estados
cambiantes en la base de datos.
Datos de sesin
Eventos de espera
Asignaciones de memoria
SQL en ejecucin
Uso de UNDO
Cursores abiertos
Uso de redo log
Etc.
Instancia de Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Vistas de Rendimiento Dinmico
La base de datos Oracle tambin mantiene un juego de datos ms dinmico en cuanto al
funcionamiento y rendimiento de la instancia de base de datos. Estas vistas de r
endimiento
dinmico se basan en tablas virtuales que se generan a partir de estructuras de me
moria del
servidor de base de datos. Es decir, no son tablas convencionales que residen en
una base de
datos. Por este motivo, algunas de ellas pueden mostrar datos antes de que se mo
nte o abra una
base de datos.
Las vistas de rendimiento dinmico incluyen informacin sobre lo siguiente:
Sesiones
Estados de archivo
Progreso de trabajos y tareas
Bloqueos
Estado de copia de seguridad
Asignacin y uso de la memoria
Parmetros del sistema y de sesin
Ejecucin de SQL
Estadsticas y mtrica
Nota: Las vistas DICT y DICT_COLUMNS tambin contienen los nombres de estas vistas
de
rendimiento dinmico.
Base de Datos Oracle 11g: Taller de Administracin I 4-32
Vistas de Rendimiento Dinmico:
Ejemplos de Uso
a
b
c
SQL> SELECT sql_text, executions FROM v$sql
WHERE cpu_time > 200000;
SQL> SELECT * FROM v$session WHERE machine =
'EDRSR9P1' and logon_time > SYSDATE - 1;
SQL> SELECT sid, ctime FROM v$lock WHERE
block > 0;
Copyright 2013, Oracle. Todos los derechos reservados.
Vistas de Rendimiento Dinmico: Ejemplos de Uso
Enterprise Manager utiliza con frecuencia estas vistas, aunque los usuarios pued
en consultarlas
siempre que sea necesario. Los tres ejemplos mostrados en la diapositiva contest
an a las
siguientes preguntas:
a. Cules son las sentencias SQL y su nmero asociado de ejecuciones en las que el ti
empo
de CPU empleado es superior a 200.000 microsegundos?
b. Qu sesiones se conectaron desde la computadora EDRSR9P1 el ltimo da?
c. Cules son los identificadores de sesin de las sesiones que actualmente retienen
un
bloqueo que est bloqueando a otro usuario y cunto tiempo se ha retenido ese bloque
o?
Base de Datos Oracle 11g: Taller de Administracin I 4-33
Vistas de Rendimiento Dinmico:
Consideraciones

Estas vistas son propiedad del usuario SYS.


Las vistas disponibles son diferentes en
momentos distintos:
Si se ha iniciado la instancia.
Si se ha montado la base de datos.
Si se ha abierto la base de datos.
Puede consultar V$FIXED_TABLE para ver todos
los nombres de vistas.
Estas vistas a menudo se denominan vistas con
formato v-$ .
En estas vistas no se garantiza la consistencia de
lectura porque los datos son dinmicos.
Copyright 2013, Oracle. Todos los derechos reservados.
Vistas de Rendimiento Dinmico: Consideraciones
Algunas vistas dinmicas contienen datos que no se aplican a todos los estados de
una instancia
o de una base de datos. Por ejemplo, si se acaba de iniciar una instancia, pero
no se ha montado
ninguna base de datos, puede consultar V$BGPROCESS para ver la lista de los proc
esos en
segundo plano que se estn ejecutando. Sin embargo, no puede consultar V$DATAFILE
para ver
el estado de los archivos de datos de la base de datos ya que es el montaje de u
na base de datos el
que lee el archivo de control para averiguar los archivos de datos asociados a u
na base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 4-34
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Iniciar y parar la base de datos Oracle y sus


componentes
Utilizar Enterprise Manager y describir su
funcionalidad de alto nivel
Acceder a una base de datos con SQL*Plus e
iSQL*Plus
Modificar los parmetros de inicializacin de la base
de datos
Describir las etapas de inicio de la base de datos
Describir las opciones de cierre de la base de datos
Visualizar el log de alertas
Acceder a vistas de rendimiento dinmico
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 4-35
Visin General de la Prctica:
Gestin de la Instancia de Oracle
En esta prctica se abordan los siguientes temas:

Navegacin por Enterprise Manager


Visualizacin y modificacin de parmetros de
inicializacin
Parada e inicio de la instancia de base de datos
Visualizacin del log de alertas
Conexin a la base de datos mediante el uso de
SQL*Plus e iSQL*Plus
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 4-36
Gestin de Estructuras de
Almacenamiento de Bases de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para lo
siguiente:

Describir cmo se almacenan en bloques los datos


de fila de tabla
Definir el objetivo de tablespaces y archivos de datos
Crear y gestionar tablespaces
Obtener informacin de tablespaces
Describir las funcionalidades y conceptos principales
de Gestin Automtica de Almacenamiento (ASM)
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 5-2
Estructuras de Almacenamiento
Lgicas
Base de datos
Tablespace
Segmento
Extensin
Bloque de datos
de Oracle
Fsicas
Archivo del
sistema operativo
Bloque del
sistema operativo
Copyright 2013, Oracle. Todos los derechos reservados.
Estructuras de Almacenamiento
Una base de datos se divide en unidades lgicas de almacenamiento denominadas tabl
espaces.
Cada tablespace se compone de muchos bloques lgicos de datos de Oracle. El parmetr
o
DB_BLOCK_SIZE especifica el tamao que tiene un bloque lgico. El rango de tamao de u
n
bloque lgico es de 2 KB a 32 KB. El tamao por defecto es 8 KB. Un nmero determinado
de
bloques lgicos contiguos constituye una extensin. Un juego de extensiones que se a
signan
segn una estructura lgica concreta constituye un segmento. Un bloque de datos de O
racle
representa la unidad ms pequea de E/S lgica.
Base de Datos Oracle 11g: Taller de Administracin I 5-3
Almacenamiento de Datos de Tabla
Columnas
Bloques
Tabla A
Segmento
Tabla B
Segmento
Filas
Tabla
Tablespace
Parte de una fila
Extensin
Copyright 2013, Oracle. Todos los derechos reservados.
Almacenamiento de Datos de Tabla
Al crear una tabla, se crea un segmento para contener los datos. Un tablespace c
ontiene una
recopilacin de segmentos. Desde el punto de vista lgico, una tabla contiene filas
de valores de
columna. En ltima instancia, una fila se almacena en una base de datos en forma d
e una parte de
una fila. Se denomina parte de una fila porque en determinadas circunstancias pu
ede que la fila
entera no se almacene en un solo lugar. Esta situacin se produce cuando una fila
insertada es
demasiado grande para caber en un solo bloque o cuando una actualizacin hace que
el espacio
actual de una fila existente se quede pequeo.
Base de Datos Oracle 11g: Taller de Administracin I 5-4
Anatoma de un Bloque de Base de Datos
Cabecera de bloque
Crecimiento
Espacio libre
Datos de fila
Copyright 2013, Oracle. Todos los derechos reservados.
Bloque de Base de Datos: Contenido
Los bloques de datos de Oracle se componen de:

Cabecera de bloque: La cabecera de bloque contiene el tipo de segmento (como tab


la o
ndice), la direccin de bloque de datos, el directorio de la tabla, el directorio d
e la fila y las
ranuras de transaccin de 23 bytes cada una que se utilizan cuando se llevan a cab
o
modificaciones en filas del bloque. La cabecera de bloque crece de arriba a abaj
o desde la
parte superior.
Datos de fila: stos son los datos reales para las filas del bloque. El espacio pa
ra los datos
de fila crece de abajo a arriba desde la base.
Espacio libre: El espacio libre est en la parte central del bloque. Esto permite
el
crecimiento del espacio de la cabecera y de los datos de fila cuando sea necesar
io. Los
datos de fila ocupan espacio libre conforme se insertan nuevas filas o las colum
nas de filas
existentes se actualizan con valores mayores. Algunos ejemplos de eventos que pr
ovocan el
crecimiento de la cabecera se dan cuando el directorio de la fila necesita ms ent
radas de
fila o cuando se necesitan ms ranuras de transaccin de las que se configuraron en
un
principio. En principio, el espacio libre de un bloque es contiguo. Sin embargo,
las
supresiones y actualizaciones pueden fragmentar el espacio libre del bloque. El
servidor de
Oracle fusiona el espacio libre en el bloque cuando es necesario.
Base de Datos Oracle 11g: Taller de Administracin I 5-5
Tablespaces y Archivos de Datos
La base de datos Oracle almacena datos de forma
lgica en tablespaces y de forma fsica en archivos de
datos.

Tablespaces:
Slo pueden pertenecer a una base de datos
Constan de uno o ms archivos de datos
Se dividen en unidades lgicas de almacenamiento

Archivos de datos:
Pueden pertenecer slo a un
tablespace y una base de datos
Son un repositorio para datos
de objetos de esquema
Base de datos
Tablespace
Archivos de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Tablespaces y Archivos de Datos
Las bases de datos, tablespaces y archivos de datos estn estrechamente relacionad
os pero
presentan importantes diferencias:
Una base de datos Oracle consta de una o ms unidades lgicas de almacenamiento
denominadas tablespaces, que en conjunto almacenan todos los datos de la base de
datos.
Cada tablespace de una base de datos Oracle se compone de uno o ms archivos
denominados archivos de datos, que son estructuras fsicas que se ajustan al siste
ma
operativo en el que se est ejecutando el software de Oracle.
Los datos de una base de datos se almacenan en conjunto en los archivos de datos
que
constituyen cada tablespace de la base de datos. Por ejemplo, la base de datos O
racle ms
simple tendra dos tablespaces (los tablespaces obligatorios SYSTEM y SYSAUX), cad
a
uno de ellos con un archivo de datos. Otra base de datos puede tener tres tables
paces,
compuestos cada uno por dos archivos de datos (un total de seis archivos de dato
s).
Una nica base de datos puede tener hasta 65.534 archivos de datos.
Base de Datos Oracle 11g: Taller de Administracin I 5-6
Parmetro Descripcin DB_CREATE_FILE_DEST Define la ubicacin del directorio del siste
ma de archivos por defecto para los archivos de datos y los archivos temporales
DB_CREATE_ONLINE_LOG_DEST_n Define la ubicacin para la creacin de archivos de cont
rol y archivos redo log DB_RECOVERY_FILE_DEST Define la ubicacin para las copias
de seguridad de RMAN
Oracle Managed Files (OMF)
Especificar operaciones de archivos en funcin de los
objetos de base de datos en lugar de los nombres de
archivos.
Ejemplo:
SQL> ALTER SYSTEM SET DB_CREATE_FILE_DEST = '/u01/oradata';
SQL> CREATE TABLESPACE tbs_1;
Copyright 2013, Oracle. Todos los derechos reservados.
Oracle Managed Files (OMF)
Oracle Managed Files (OMF) elimina la necesidad de gestionar directamente los ar
chivos del
sistema operativo que forman una base de datos Oracle. Especifique operaciones e
n funcin de
los objetos de base de datos en lugar de los nombres de archivos. La base de dat
os utiliza
internamente las interfaces del sistema de archivos estndar para crear y suprimir
archivos segn
lo necesiten las siguientes estructuras de la base de datos:
Tablespaces
Archivos redo log
Archivos de control
Archive logs
Archivos de seguimiento de cambios de bloque
Logs de flashback
Copias de seguridad de RMAN
La base de datos puede disponer tanto de archivos Oracle Managed Files como de a
rchivos no
gestionados. Ya debe existir el directorio del sistema de archivos especificado
por cualquiera de
estos parmetros, la base de datos no lo crea. El directorio debe tener tambin perm
isos para que
la base de datos cree los archivos en el mismo.
El ejemplo muestra que una vez definido DB_CREATE_FILE_DEST, la clusula DATAFILE
se puede omitir de una sentencia CREATE TABLESPACE. El archivo de datos se crea
en la
ubicacin especificada por DB_CREATE_FILE_DEST.
Base de Datos Oracle 11g: Taller de Administracin I 5-7
Gestin de Espacio en Tablespaces

Tablespace gestionado localmente:


Las extensiones libres se gestionan en el
tablespace.
Se utiliza un bitmap para registrar extensiones
libres.
Cada bit corresponde a un bloque o grupo de bloques.
El valor del bit indica libre o usado.
Se recomienda el uso de tablespaces gestionados
localmente.
Tablespace gestionado por diccionario:
El diccionario de datos gestiona las extensiones libres.
Se actualizan las tablas correspondientes cuando se
asignan o se anula la asignacin de extensiones.
Estos tablespaces slo se soportan para compatibilidad
con versiones anteriores.
Copyright 2013, Oracle. Todos los derechos reservados.
Gestin de Espacio en Tablespaces
Los tablespaces asignan espacio en extensiones. Los tablespaces se pueden crear
para utilizar
uno de los dos siguientes mtodos de realizacin de seguimiento de espacio libre o u
sado:

Tablespaces gestionados localmente: Las extensiones se gestionan en el tablespac


e a
travs de bitmaps. Cada bit del bitmap corresponde a un bloque o grupo de bloques.
Cuando una extensin se asigna o se libera para volver a utilizarla, el servidor d
e Oracle
cambia los valores del bitmap para mostrar el nuevo estado de los bloques.
Tablespaces gestionados por diccionario: El diccionario de datos gestiona las
extensiones. El servidor de Oracle actualiza las tablas adecuadas del diccionari
o de datos
siempre que se asigna o se anula la asignacin de una extensin. Este mtodo se utiliz
a
para obtener la compatibilidad con versiones anteriores; se recomienda usar tabl
espaces
gestionados localmente.
Base de Datos Oracle 11g: Taller de Administracin I 5-8
Exploracin de la Estructura de
Almacenamiento
Haga clic en los enlaces para
visualizar informacin detallada.
Copyright 2013, Oracle. Todos los derechos reservados.
Exploracin de la Estructura de Almacenamiento
Las estructuras de datos lgicos se almacenan en los archivos fsicos de la base de
datos.
Enterprise Manager permite visualizar las estructuras lgicas de la base de datos
fcilmente.
Si desea obtener informacin detallada sobre cada una de las estructuras, puede ha
cer clic en los
enlaces de la regin Storage de la pgina Administration.
Base de Datos Oracle 11g: Taller de Administracin I 5-9
Creacin de un Nuevo Tablespace
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de un Nuevo Tablespace
Para crear un tablespace, realice los siguientes pasos:
1. Haga clic en el separador Administration y, a continuacin, haga clic en Tables
paces
situado bajo la cabecera Storage.
2. Haga clic en Create.
Nota: Si desea crear un tablespace igual que otro ya existente, seleccione a con
tinuacin el
tablespace existente y elija Create Like en el men Actions. Haga clic en Go.
Aparecer la pgina Create Tablespace.
3. Introduzca un nombre para el tablespace.
4. Bajo la cabecera Extent Management, seleccione Locally Managed. El servidor d
e bases de
datos Oracle gestiona eficazmente en el tablespace las extensiones de un tablesp
ace
gestionado localmente. Para un tablespace gestionado por diccionario, debe gesti
onar de
forma ms activa las extensiones y es necesario tener acceso al diccionario de dat
os para
realizar un seguimiento de las mismas. Los tablespaces gestionados por diccionar
io estn
en desuso. Oracle no recomienda su uso.
5. Bajo la cabecera Type, seleccione Permanent. Los tablespaces permanentes alma
cenan
objetos de base de datos permanentes creados por el sistema o por los usuarios.
Base de Datos Oracle 11g: Taller de Administracin I 5-10
Creacin de un Nuevo Tablespace (continuacin)
6. Bajo la cabecera Status, seleccione Read Write. El estado de lectura/escritur
a significa que
los usuarios pueden leer y escribir en el tablespace una vez creado. ste es el va
lor por
defecto.
7. En la regin Datafiles de la pgina, haga clic en Add para agregar archivos de da
tos al
tablespace, un tablespace debe tener al menos un archivo. Los tablespaces de arc
hivo
grande se utilizan con bases de datos muy grandes en las que la Gestin Automtica d
e
Almacenamiento (ASM) de Oracle u otros gestores de volmenes lgicos soportan la
segmentacin o la matriz redundante de discos independientes (RAID), adems de
volmenes lgicos extensibles dinmicamente.
8. En la pgina Add Datafiles, introduzca un nombre de archivo. Acepte el valor po
r defecto
para File Directory e introduzca un tamao de archivo.
9. En la regin Storage, puede seleccionar Automatically extend datafile when full
(AUTOEXTEND) y, a continuacin, especificar una cantidad en el campo Increment.
Esto hace que el archivo de datos se ample automticamente cada vez que se quede si
n
espacio. Por supuesto, est limitado por el medio fsico en el que reside. Deje el v
alor
Maximum File Size definido en Unlimited. Haga clic en OK. Volver a la pgina Create
Tablespace.
10. Haga clic en el separador Storage. Aparecer la pgina Edit Tablespace.
11. Acepte todos los valores por defecto de la pgina Storage.
Nota: Estos pasos estn destinados a mostrar cmo crear rpidamente un tablespace para
la
mayora de situaciones. Puede que necesite cambiar algunas opciones en funcin de su
s
requisitos concretos.
Base de Datos Oracle 11g: Taller de Administracin I 5-11
Almacenamiento de Tablespaces
Gestionados Localmente
Copyright 2013, Oracle. Todos los derechos reservados.
Almacenamiento de Tablespaces Gestionados Localmente
Las extensiones de un tablespace gestionado localmente se pueden asignar de uno
de los dos
modos siguientes:

Automatic: Tambin denominado asignacin automtica, especifica que los tamaos de las
extensiones del tablespace los gestiona el sistema. No puede especificar un tamao
de
extensin. No puede especificar Automatic para un tablespace temporal.
Uniform: Especifica que el tablespace est gestionado con extensiones uniformes co
n un
tamao especificado. El tamao por defecto es 1 MB. Todas las extensiones de tablesp
aces
temporales son uniformes y presentan ese valor por defecto. No puede especificar
Uniform
para un tablespace de deshacer.
La gestin de espacio de segmento en un tablespace gestionado localmente se puede
especificar
como:

Automatic: La base de datos Oracle utiliza bitmaps para gestionar el espacio lib
re en
segmentos. Un bitmap describe el estado de cada bloque de datos de un segmento c
on
respecto a la cantidad de espacio del bloque disponible para insertar filas. A m
edida que hay
ms o menos espacio disponible en un bloque de datos, su nuevo estado se refleja e
n el
bitmap. Con los bitmaps, la base de datos Oracle gestiona el espacio libre de fo
rma ms
automtica y, por este motivo, este mtodo de gestin de espacio se denomina gestin
automtica de espacio de segmento (ASSM).
Base de Datos Oracle 11g: Taller de Administracin I 5-12
Almacenamiento de Tablespaces Gestionados Localmente (continuacin)

Manual: Especifica que desea utilizar listas de bloques libres para la gestin de
espacio
libre en segmentos. Las listas de bloques libres son listas de bloques de datos
que tienen
espacio disponible para la insercin de filas. Esta forma de gestin de espacio en
segmentos se denomina gestin manual de espacio de segmento debido a la necesidad
de
especificar y ajustar los parmetros de almacenamiento PCTUSED, FREELISTS y
FREELIST GROUPS para objetos de esquema creados en el tablespace. Se soporta par
a
obtener la compatibilidad con versiones anteriores; se recomienda utilizar ASSM.
Ventajas de los Tablespaces Gestionados Localmente
Los tablespaces gestionados localmente presentan las siguientes ventajas sobre l
os gestionados
por diccionario:
La gestin local evita operaciones recursivas de gestin de espacio. Esto sucede en
los
tablespaces gestionados por diccionario si el consumo o la liberacin de espacio e
n una
extensin da como resultado otra operacin que consume o libera espacio en un segmen
to
de deshacer o en una tabla de diccionarios de datos.
Dado que no registran espacio libre en las tablas de diccionarios de datos, los
tablespaces
gestionados localmente reducen la contencin en estas tablas.
La gestin local de extensiones realiza automticamente un seguimiento del espacio l
ibre
adyacente, que elimina la necesidad de fusionar extensiones libres.
El sistema puede determinar automticamente los tamaos de las extensiones gestionad
as
localmente.
Los cambios en los bitmaps de extensiones no generan informacin de deshacer porqu
e no
actualizan tablas del diccionario de datos (excepto en casos especiales como, po
r ejemplo,
informacin de cuota de tablespace).
Nota: Si gestiona una base de datos que tiene tablespaces gestionados por diccio
nario y desea
convertirlos a tablespaces gestionados localmente, utilice el procedimiento
DBMS_SPACE_ADMIN.TABLESPACE_MIGRATE_TO_LOCAL. Para obtener ms
informacin sobre el uso de este procedimiento, consulte PL/SQL Packages and Types
Reference
y Database Administrator s Guide.
Enable logging
Los cambios que se realizan en los objetos en el tablespace se escriben en el re
do log. Si el
registro no est activado, la creacin de cualquier objeto y las posteriores inserci
ones de rutas de
acceso de cargas directas realizadas en esos objetos no se escriben en el redo l
og y, por lo tanto,
dichos objetos son irrecuperables en caso de prdida de datos. De modo que, cuando
un objeto se
crea con el registro desactivado, debe realizar una copia seguridad si desea que
sea recuperable.
Para obtener ms informacin sobre la clusula de registro, consulte la gua Oracle Data
base
SQL Reference.
Block Information
Esta regin muestra el tamao de bloque que se utiliza para el tablespace que se est
creando.
Aqu se muestra como un valor de slo lectura. Si define alguno de los parmetros alte
rnativos
de inicializacin para el tamao de bloque (DB_nK_CACHE_SIZE), apareceran aqu otros
valores en forma de opciones. Para obtener ms informacin sobre cmo definir otros ta
maos
de bloque, consulte Oracle Database Administrator s Guide.
Base de Datos Oracle 11g: Taller de Administracin I 5-13
Tablespaces en la Base de Datos
Preconfigurada

SYSTEM
SYSAUX
TEMP

UNDOTBS1
USERS
EXAMPLE
Copyright 2013, Oracle. Todos los derechos reservados.
Tablespaces en la Base de Datos Preconfigurada
Los siguientes tablespaces se crean en la base de datos preconfigurada de este c
urso:
SYSTEM: El servidor de Oracle utiliza el tablespace SYSTEM para gestionar la bas
e de
datos. Contiene el diccionario de datos y las tablas que incluyen informacin admi
nistrativa
sobre la base de datos. Todos ellos estn incluidos en el esquema SYS y slo el usua
rio
SYS u otros usuarios administrativos con el privilegio necesario pueden acceder
a ellos.
SYSAUX: ste es un tablespace auxiliar del tablespace SYSTEM. Algunos componentes
y
productos que utilizaban el tablespace SYSTEM o sus propios tablespaces en versi
ones
anteriores de la base de datos Oracle utilizan ahora el tablespace SYSAUX. Todas
las bases
de datos Oracle 11g o versiones posteriores deben tener un tablespace SYSAUX.
En Enterprise Manager, puede ver un grfico de tarta del contenido de este tablesp
ace.
Para ello, haga clic en Tablespaces en la pgina Administration. Seleccione SYSAUX
y
haga clic en Edit. Despus, haga clic en el separador Occupants. Una vez concluida
la
creacin, se puede controlar el uso del espacio de cada ocupante del tablespace SY
SAUX
mediante EM. Si se detecta que un componente ocupa demasiado espacio del tablesp
ace
SYSAUX o si se prev que lo haga, cabe la posibilidad de moverlo a otro tablespace
si se
selecciona uno de los ocupantes y se hace clic en Change Tablespace.
Base de Datos Oracle 11g: Taller de Administracin I 5-14
Tablespaces en la Base de Datos Preconfigurada (continuacin)
TEMP: El tablespace temporal se utiliza cuando se ejecuta una sentencia SQL que
necesita
la creacin de segmentos temporales (como grandes ordenaciones o la creacin de un
ndice). De la misma forma que a cada usuario se le asigna un tablespace por defec
to para
almacenar objetos de datos creados, tambin se le asigna un tablespace temporal. L
a
prctica recomendada es definir un tablespace temporal por defecto para la base de
datos
que se asignar a cada usuario recin creado, a menos que se especifique lo contrari
o. En la
base de datos preconfigurada, el tablespace TEMP se especifica como tablespace t
emporal
por defecto. Esto significa que si no se especifica ningn tablespace temporal al
crear la
cuenta de usuario, la base de datos Oracle asigna este tablespace al usuario.
UNDOTBS1: ste es el tablespace de deshacer que utiliza el servidor de bases de da
tos para
almacenar informacin de deshacer. Si una base de datos utiliza Gestin Automtica de
Deshacer (AUM), debe tener exactamente un tablespace de deshacer activo en cualq
uier
momento. Este tablespace se genera durante la creacin de la base de datos.
USERS: Este tablespace se utiliza para almacenar objetos y datos de usuarios per
manentes.
En la base de datos preconfigurada, el tablespace USERS es el tablespace por def
ecto para
todos los objetos creados por usuarios que no son del sistema. Para los usuarios
SYS y
SYSTEM (usuarios del sistema), el tablespace permanente por defecto sigue siendo
SYSTEM.
EXAMPLE: Este tablespace contiene los esquemas de ejemplo que se pueden instalar
al
crear la base de datos. Los esquemas de ejemplo proporcionan una plataforma comn
para
los ejemplos. La documentacin y los cursos de Oracle contienen ejemplos basados e
n los
esquemas de ejemplo.
Nota: Para simplificar la administracin es normal tener un tablespace slo para ndic
es.
Base de Datos Oracle 11g: Taller de Administracin I 5-15
Modificacin de un Tablespace
Copyright 2013, Oracle. Todos los derechos reservados.
Modificacin de un Tablespace
Despus de crear un tablespace, puede modificarlo de varios modos a medida que cam
bian las
necesidades del sistema.
Cambio de nombre: Introduzca un nuevo nombre para el tablespace y haga clic en A
pply.
Cambio del estado: Un tablespace puede tener tres estados distintos. Cualquiera
de los tres estados
siguientes puede no estar disponible ya que su disponibilidad depende del tipo d
e tablespace:

Read Write: El tablespace est online y se puede leer y escribir en l.


Read Only: Especifique Read Only para poner el tablespace en el modo de slo lectu
ra de
transicin. En este estado, se pueden realizar las transacciones existentes (de co
nfirmacin o
de rollback), pero no se permiten otras operaciones de lenguaje de manipulacin de
datos
(DML) en los objetos del tablespace. El tablespace est online mientras tiene el e
stado de slo
lectura. No puede hacer que el tablespace SYSTEM o SYSAUX sea de slo lectura.
Base de Datos Oracle 11g: Taller de Administracin I 5-16
Modificacin de un Tablespace (continuacin)

Offline: Puede poner offline un tablespace online para que esta parte de la base
de datos no
est disponible temporalmente para su uso general. El resto de la base de datos es
t abierta
y disponible para que los usuarios accedan a los datos. Al ponerla offline, pued
e utilizar las
siguientes opciones:
-
-
-
-
Normal: Un tablespace se puede poner offline normalmente si no existe ninguna
condicin de error para ninguno de los archivos de datos del tablespace. La base d
e
datos Oracle garantiza que todos los datos se escriben en el disco al establecer
un
punto de control para todos los archivos de datos del tablespace cuando los pone
offline.
Temporary: Un tablespace se puede poner offline temporalmente, incluso si hay
condiciones de error para uno o ms archivos del tablespace. La base de datos Orac
le
pone offline los archivos de datos (los que an no lo estn), al establecer a la vez
un
punto de control en los mismos. Si no hay ningn archivo offline, pero utiliza la
clusula temporal, la recuperacin del medio fsico no es necesaria para volver a
poner el tablespace online. Sin embargo, si uno o ms archivos del tablespace estn
offline debido a errores de escritura y pone el tablespace offline temporalmente
, el
tablespace necesita la recuperacin antes de ponerlo de nuevo online.
Immediate: Un tablespace se puede poner offline inmediatamente, sin que la base
de
datos Oracle establezca un punto de control en alguno de los archivos de datos.
Cuando especifica Immediate, es necesaria la recuperacin del medio fsico para el
tablespace para poner online el tablespace. No puede poner un tablespace offline
inmediatamente si la base de datos se est ejecutando en modo NOARCHIVELOG.
For Recover: El valor FOR RECOVER ya no se utiliza. Se soporta la sintaxis para
la
compatibilidad con versiones anteriores.
Cambio del tamao: Puede agregar espacio a un tablespace existente, ya sea agregndo
le
archivos de datos o cambiando el tamao de un archivo de datos existente.
Para agregar un nuevo archivo de datos al tablespace, haga clic en Add y rellene
la
informacin sobre el archivo de datos en la pgina Add Datafile.
Para cambiar el tamao de un archivo de datos existente, seleccinelo en la regin
Datafiles de la pgina Edit Tablespace haciendo clic en el nombre del archivo de d
atos, o
bien seleccione el archivo de datos y haga clic en Edit. A continuacin, en la pgin
a Edit
Datafile puede cambiar el tamao del archivo de datos. Puede aumentar o reducir el
tamao
del tablespace. Sin embargo, no puede hacer que un archivo de datos sea ms pequeo
que
el espacio usado en el archivo; si lo intenta, obtendr el siguiente error:
ORA-03297: file contains used data beyond requested RESIZE
value
Opciones de almacenamiento: Haga clic en Storage para cambiar el comportamiento
de
registro del tablespace.
Base de Datos Oracle 11g: Taller de Administracin I 5-17
Modificacin de un Tablespace (continuacin)
Thresholds: Haga clic en Thresholds para cambiar el punto en el que se alcanza u
n nivel crtico
o de advertencia en cuanto al uso de espacio en el tablespace. Dispone de tres o
pciones:

Use Database Default Thresholds: Utiliza valores por defecto predefinidos y tien
e la
opcin de definir dichos valores por defecto.
Specify Thresholds: Permite definir umbrales para este tablespace concreto.
Disable Thresholds: Desactiva las alertas de uso de espacio para este tablespace
.
Nota: Pueden pasar varios minutos hasta que se registre una alerta de umbral.
Base de Datos Oracle 11g: Taller de Administracin I 5-18
Acciones con Tablespaces
Copyright 2013, Oracle. Todos los derechos reservados.
Acciones con Tablespaces
Mediante el men Actions puede realizar varias tareas con los tablespaces. Selecci
one un
tablespace y, a continuacin, la accin que desea realizar:

Add Datafile: Agrega un archivo de datos al tablespace, con lo que se agranda el


tablespace.
Create Like: Crea otro tablespace utilizando el tablespace como plantilla.
Generate DDL: Genera la sentencia de lenguaje de definicin de datos (DLL) que cre
a el
tablespace. A continuacin se puede copiar y pegar en un archivo de texto para su
uso
como archivo de comandos o con fines de documentacin.
Make Locally Managed: Convierte el tablespace en gestionado localmente si, en la
actualidad, el tablespace est gestionado por diccionario. Esta conversin no es rev
ersible.
No puede volver a convertir el tablespace a gestionado por diccionario.
Make Readonly: Para todas las escrituras en el tablespace. Se permite terminar l
as
transacciones actuales, pero no se permite iniciar nuevas DML u otras actividade
s de
escritura en el tablespace. Esta opcin aparece slo si el tablespace no es ya de slo
lectura.
Make Writable: Permite iniciar DML y otras actividades de escritura en objetos d
el
tablespace. Esta opcin aparece slo si, actualmente, no se puede escribir en el tab
lespace.
Base de Datos Oracle 11g: Taller de Administracin I 5-19
Acciones con Tablespaces (continuacin)

Place Online: Pone online un tablespace que actualmente est offline


Reorganize: Inicia el asistente de reorganizacin, que puede utilizar para mover o
bjetos en
el tablespace con el fin de reclamar espacio que de otro modo tal vez no se util
ice. Esta
tarea se debe realizar en los momentos de menor uso de los objetos del tablespac
e.
Run Segment Advisor: Inicia el Asesor de Segmentos, que puede utilizar para dete
rminar
si un objeto tiene espacio disponible para la recuperacin en funcin del nivel de
fragmentacin de espacio en el objeto. En el nivel de tablespace, se genera un con
sejo para
cada segmento del tablespace.
Show Dependencies: Muestra objetos de los que depende este tablespace u objetos
que
dependen de este tablespace
Show Tablespace Contents: Muestra informacin sobre todos los segmentos del
tablespace, incluido un mapa grfico de todas las extensiones
Take Offline: Pone no disponible un tablespace que actualmente est online. El tab
lespace
no se suprime ni borra, simplemente no est disponible.
Base de Datos Oracle 11g: Taller de Administracin I 5-20
Borrado de Tablespaces
Copyright 2013, Oracle. Todos los derechos reservados.
Borrado de Tablespaces
Puede borrar un tablespace y su contenido (los segmentos incluidos en el tablesp
ace) de la base
de datos si el tablespace y su contenido ya no son necesarios. Debe tener el pri
vilegio del sistema
DROP TABLESPACE para borrar un tablespace.
Cuando borra un tablespace, se eliminan los punteros al archivo del archivo de c
ontrol de la base
de datos asociada. Opcionalmente puede indicar al servidor de Oracle que suprima
los archivos
del sistema operativo (archivos de datos) que constituyen el tablespace borrado.
Si no indica al
servidor de Oracle que suprima los archivos de datos al mismo tiempo que el tabl
espace, deber
utilizar posteriormente los comandos adecuados del sistema operativo si desea su
primirlos.
No puede borrar un tablespace que contenga segmentos activos. Por ejemplo, si se
est utilizando
actualmente una tabla del tablespace o el tablespace contiene datos de deshacer
necesarios para
realizar un rollback de transacciones sin confirmar, no puede borrar el tablespa
ce. El tablespace
puede estar online u offline, pero es mejor que se ponga offline antes de borrar
lo.
Base de Datos Oracle 11g: Taller de Administracin I 5-21
Visualizacin de Informacin de
Tablespaces
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin de Informacin de Tablespaces
Haga clic en View para ver informacin sobre el tablespace seleccionado. En la pgin
a View
Tablespace, tambin puede hacer clic en Edit para modificar el tablespace.
Tambin se puede obtener informacin de tablespaces y archivos de datos consultando
lo
siguiente:

Informacin de tablespaces:
-
-
DBA_TABLESPACES
V$TABLESPACE

Informacin de archivos de datos:


-
-
DBA_DATA_FILES
V$DATAFILE

Informacin de archivos temporales:


-
-
DBA_TEMP_FILES
V$TEMPFILE
Base de Datos Oracle 11g: Taller de Administracin I 5-22
Recopilacin de Informacin de
Almacenamiento
Copyright 2013, Oracle. Todos los derechos reservados.
Recopilacin de Informacin de Almacenamiento
Para visualizar y modificar informacin del tablespace en EM, seleccione Administr
ation >
Tablespaces. Utilice los botones o la lista desplegable Actions para navegar has
ta su destino.
Base de Datos Oracle 11g: Taller de Administracin I 5-23
Visualizacin de Contenido de
Tablespaces
12061_1_sel_ts_3
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin de Contenido de Tablespaces
En la pgina Show Tablespace Contents se muestra informacin detallada sobre el tabl
espace,
incluida una lista de los segmentos del tablespace, el tipo de cada segmento, el
tamao de
segmento y el nmero de extensiones que componen cada segmento. Cualquiera de esos
cuatro
valores se puede utilizar para ordenar la lista, si hace clic en la cabecera de
columna, o para
filtrar la lista si introduce valores en la regin Search. Para los tablespaces ge
stionados por
diccionario se muestran columnas adicionales:
Max Extents
Next
Percent Increase
Para consultar una lista de extensiones, haga clic en el enlace de la columna Ex
tents.
Para visualizar las extensiones de una forma grfica, ample "Extent map" y mueva el
cursor
sobre cada extensin. Aparece la siguiente informacin:
Nombre del segmento al que pertenece la extensin
Identificador de extensin
Identificador de bloque
Tamao de la extensin en bloques
Archivo de datos en el que est almacenada la extensin
Base de Datos Oracle 11g: Taller de Administracin I 5-24
Ampliacin de la Base de Datos
Puede ampliar la base de datos de las siguientes formas:

Creando un nuevo tablespace


Agregando un archivo de datos a un tablespace
existente
Aumentando el tamao de un archivo de datos
Manteniendo el crecimiento dinmico de un archivo
de datos
Database
SYSTEM
tablespace
INVENTORY
tablespace
Copyright 2013, Oracle. Todos los derechos reservados.
Ampliacin de la Base de Datos
Estas actividades se pueden realizar mediante Enterprise Manager o mediante sent
encias SQL.
Al final, el tamao de la base de datos se puede describir como la suma de todos s
us tablespaces.
Base de Datos Oracle 11g: Taller de Administracin I 5-25
Aplicacin Base de datos Sistema de archivos Gestor de volmenes Sistema operativo
Qu es Gestin Automtica de
Almacenamiento?
Gestin Automtica de Almacenamiento

Es un sistema de archivos de
cluster portable y de alto
rendimiento
Gestiona archivos de la base
de datos Oracle
Distribuye los datos entre los
discos para equilibrar la carga
Duplica datos
Resuelve muchos retos
de gestin de almacenamiento
Copyright 2013, Oracle. Todos los derechos reservados.
Qu es Gestin Automtica de Almacenamiento?
ASM proporciona una integracin vertical del sistema de archivos y del gestor de v
olmenes
creado de forma especfica para los archivos de las bases de datos Oracle. Adems de
gestionar
mquinas de multiproceso simtrico (SMP) individuales, ASM soporta Oracle Real Appli
cation
Clusters (RAC) y, por lo tanto, permite gestionar varios nodos de un cluster.
ASM distribuye la carga de entrada/salida (E/S) entre todos los recursos disponi
bles para
optimizar el rendimiento mientras elimina la necesidad de ajuste manual de E/S.
ASM ayuda a
los DBA a gestionar los entornos de base de datos dinmicos ya que les permite aum
entar el
tamao de las bases de datos sin tener que cerrarlas a la hora de ajustar la asign
acin de
almacenamiento.
ASM puede mantener copias redundantes de los datos para ofrecer tolerancia ante
fallos o se
puede montar en mecanismos de almacenamiento suministrados por el proveedor. La
gestin de
datos se realiza seleccionando las caractersticas de fiabilidad y rendimiento des
eadas para las
clases de datos en lugar de hacerlo archivo por archivo con la intervencin del us
uario.
Las capacidades de ASM ahorran tiempo a los DBA al automatizar el almacenamiento
manual y,
en consecuencia, les permiten aumentar su capacidad para gestionar bases de dato
s ms grandes
(y en mayor nmero) con mayor eficiencia.
Base de Datos Oracle 11g: Taller de Administracin I 5-26
ASM: Funciones Clave y Ventajas
ASM

Segmenta los archivos, pero no los volmenes


lgicos
Permite la reconfiguracin y nuevo equilibrio
dinmico de discos online
Permite ajustar la velocidad de nuevo equilibrio
Proporciona redundancia por cada archivo
Slo soporta archivos de bases de datos Oracle
Detecta los clusters
Se instala automticamente
Copyright 2013, Oracle. Todos los derechos reservados.
ASM: Funciones Clave y Ventajas
ASM divide los archivos en extensiones (diferentes de las extensiones de archivo
s de datos
descritas anteriormente) y las distribuye de manera uniforme entre todos los dis
cos. Utiliza una
tcnica de ndice para realizar el seguimiento de la colocacin de cada extensin. Cuand
o vara
la capacidad de almacenamiento, ASM no vuelve a segmentar todos los datos, sino
que mueve
una cantidad de datos proporcional a la cantidad de almacenamiento agregada o el
iminada para
redistribuir uniformemente los archivos y mantener una carga equilibrada en los
discos. Todo
ello se hace mientras la base de datos permanece activa.
Puede aumentar la velocidad de una operacin de nuevo equilibrio para hacer que te
rmine antes
o reducirla para disminuir el impacto en el subsistema de E/S. ASM proporciona p
roteccin de
duplicacin sin necesidad de adquirir un gestor de volmenes lgicos de otro fabricant
e. Una
ventaja exclusiva de ASM radica en que la duplicacin se aplica por archivo, no po
r volumen.
Por lo tanto, un mismo grupo de discos puede contener una combinacin de archivos
duplicados
y no duplicados.
ASM soporta archivos de datos, archivos log, archivos de control, archive logs,
juegos de copia
de seguridad de Recovery Manager (RMAN) y otros tipos de archivos de base de dat
os Oracle.
ASM soporta RAC y elimina la necesidad de un gestor de volmenes lgicos de cluster
o de un
sistema de archivos de cluster.
Base de Datos Oracle 11g: Taller de Administracin I 5-27
ASM: Conceptos
Base de datos
Grupo de
discos de ASM
Tablespace
Segmento
Extensin
Bloque de datos
de Oracle
Archivo
de datos
Archivo del
sistema de
archivos
o
dispositivo raw
Archivo
de ASM
Disco de ASM
Unidad de
asignacin
Bloque
fsico
Copyright 2013, Oracle. Todos los derechos reservados.
ASM: Conceptos
ASM no elimina ninguna de las funciones existentes de la base de datos. Las base
s de datos
existentes siguen funcionando como siempre. Puede crear nuevos archivos como arc
hivos de
ASM y dejar que los archivos existentes se administren del modo anterior, o bien
puede
migrarlos a ASM.
En el diagrama de la diapositiva se representan las relaciones que existen entre
los diversos
componentes de almacenamiento dentro de una base de datos Oracle que utiliza ASM
. Las partes
izquierda y central del diagrama muestran las relaciones que existen en versione
s anteriores.
En la derecha se encuentran los nuevos conceptos introducidos con ASM.
Los archivos de base de datos se pueden almacenar como archivos de ASM. La cabez
a de la
nueva jerarqua la ocupan los grupos de discos de ASM. Todos los archivos de ASM e
stn en un
nico grupo de discos. Por el contrario, un grupo de discos puede contener archivo
s que
pertenezcan a varias bases de datos y una nica base de datos puede utilizar almac
enamiento de
varios grupos de discos. Como puede observar, un grupo de discos est formado por
varios
discos de ASM y cada disco de ASM pertenece a un nico grupo de discos. Los archiv
os de
ASM siempre se distribuyen por todos los discos de ASM del grupo. Los discos de
ASM estn
particionados en unidades de asignacin de un megabyte. La unidad de asignacin cons
tituye el
espacio de disco contiguo ms pequeo que asigna ASM. ASM no permite dividir un bloq
ue de
Oracle en unidades de asignacin.
Nota: El grfico slo tiene que ver con un tipo de archivo de ASM: archivo de datos.
Sin
embargo, ASM se puede utilizar para almacenar otros tipos de archivos de base de
datos.
Base de Datos Oracle 11g: Taller de Administracin I 5-28
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Describir cmo se almacenan en bloques los datos


de fila de tabla
Definir el objetivo de tablespaces y archivos de
datos
Crear y gestionar tablespaces
Obtener informacin de tablespaces
Describir las funcionalidades y conceptos
principales de Gestin Automtica de
Almacenamiento (ASM)
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 5-29
Visin General de la Prctica:
Gestin de Estructuras de Almacenamiento de
Bases de Datos
En esta prctica se abordan los siguientes temas:

Creacin de tablespaces
Recopilacin de informacin sobre tablespaces
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 5-30
Administracin de Seguridad del Usuario
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para lo
siguiente:

Crear y gestionar cuentas de usuario de base de datos


Autenticar usuarios
Asignar reas de almacenamiento por defecto
(tablespaces)
Otorgar y revocar privilegios
Crear y gestionar roles
Crear y gestionar perfiles
Implementar funciones estndar de seguridad de
contrasea
Controlar el uso de recursos por los usuarios
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Los siguientes trminos estn relacionados con la administracin de usuarios de base d
e datos y
le ayudarn a comprender los objetivos:
Una cuenta de usuario de base de datos es un medio de organizar la propiedad y e
l acceso a
objetos de base de datos.
Una contrasea es una autenticacin por parte de la base de datos Oracle.
Un privilegio es un derecho para ejecutar un tipo concreto de sentencia SQL o pa
ra acceder a un
objeto de otro usuario.
Un rol es un grupo con nombre de privilegios relacionados que se otorgan a los u
suarios o a
otros roles.
Los perfiles imponen un juego con nombre de lmites de recursos en cuanto al uso d
e la base de
datos y de los recursos de la instancia.
La cuota es un espacio asignado en un tablespace determinado. Es uno de los mtodo
s mediante
el cual puede controlar el uso de recursos por parte de los usuarios.
Base de Datos Oracle 11g: Taller de Administracin I 6-2
Cuentas de Usuario
de Base de Datos
> Usuario
Autenticacin
Privilegio
Rol
Perfil
Seguridad con
Contrasea
Cuota
Cada cuenta de usuario de base de datos tiene lo
siguiente:

Nombre de usuario nico


Mtodo de autenticacin
Tablespace por defecto
Tablespace temporal
Perfil de usuario
Grupo de consumidores
Estado de bloqueo
Copyright 2013, Oracle. Todos los derechos reservados.
Cuentas de Usuario de Base de Datos
Para acceder a la base de datos, un usuario debe especificar una cuenta de usuar
io de base de
datos vlida y autenticarse correctamente segn los requisitos de dicha cuenta de us
uario. Cada
usuario de base de datos tiene su propia cuenta de base de datos. Esta es la prct
ica recomendada
por Oracle para evitar posibles agujeros en la seguridad y proporcionar datos si
gnificativos para
ciertas actividades de auditora. Sin embargo, en algunos casos, los usuarios comp
arten una
cuenta de base de datos comn. En este caso, el sistema operativo y las aplicacion
es deben
proporcionar la seguridad adecuada para la base de datos. Cada cuenta de usuario
tiene lo
siguiente:

Nombre de usuario nico: Los nombres de usuario no pueden superar los 30 bytes ni
contener caracteres especiales y deben empezar por una letra.
Mtodo de autenticacin: El mtodo de autenticacin ms comn es una contrasea, pero
la base de datos Oracle 11g soporta otros mtodos de autenticacin, entre los que se
incluyen la autenticacin biomtrica, mediante certificado y mediante elemento.
Tablespace por defecto: ste es el lugar en el que el usuario crear objetos si no
especifica ningn otro tablespace. Tenga en cuenta que disponer de un tablespace p
or
defecto no implica que el usuario tenga el privilegio de crear objetos en dicho
tablespace,
ni tampoco que tenga una cuota de espacio en dicho tablespace en la que crear ob
jetos.
Ambos se otorgan por separado.
Base de Datos Oracle 11g: Taller de Administracin I 6-3
Cuentas de Usuario de Base de Datos (continuacin)

Tablespace temporal: Es un lugar en el que el usuario puede crear objetos tempor


ales
como, por ejemplo, ordenaciones y tablas temporales.
Perfil de usuario: Es un juego de restricciones de recurso y contrasea asignadas
al
usuario.
Grupo de consumidores: Es una opcin utilizada por el gestor de recursos.
Estado de bloqueo: Los usuarios slo pueden acceder a las cuentas desbloqueadas .
Base de Datos Oracle 11g: Taller de Administracin I 6-4
Cuentas Predefinidas: SYS y SYSTEM

La cuenta SYS:
Tiene el rol DBA otorgado
Tiene todos los privilegios con ADMIN OPTION
Es necesaria para el inicio, el cierre y para algunos
comandos de mantenimiento
Es propietaria del diccionario de datos
Es propietaria del repositorio de carga de trabajo
automtica (AWR)
La cuenta SYSTEM tiene otorgado el rol DBA.
Estas cuentas no se utilizan para operaciones
rutinarias.
Copyright 2013, Oracle. Todos los derechos reservados.
Cuentas Predefinidas: SYS y SYSTEM
Las cuentas SYS y SYSTEM tienen otorgado por defecto el rol de administrador de
base de datos
(DBA).
La cuenta SYS tiene adems todos los privilegios con la opcin ADMIN OPTION y es pro
pietaria
del diccionario de datos. Para conectarse a la cuenta SYS es necesario utilizar
la clusula AS
SYSDBA. Cualquier usuario al que se le otorgue el privilegio SYSDBA puede conect
arse a la
cuenta SYS mediante la clusula AS SYSDBA. Slo los usuarios con privilegios , a los qu
e se
les otorga el privilegio SYSDBA o SYSOPER, pueden iniciar y cerrar la instancia
de base de
datos.
A la cuenta SYSTEM se le otorga el rol DBA por defecto, pero no el privilegio SY
SDBA.
Prctica recomendada: Debido a la aplicacin del principio de privilegio ms bajo, est
as
cuentas no se utilizan para operaciones rutinarias. Los usuarios que necesiten p
rivilegios DBA
tienen cuentas separadas a las que se les otorgan los privilegios necesarios. Po
r ejemplo, Jim
tiene una cuenta de privilegio bajo denominada jim y una cuenta con privilegios
denominada
jim_dba. Este mtodo permite aplicar el principio de privilegio ms bajo, elimina la
necesidad
de compartir cuentas y permite auditar acciones individuales.
Las cuentas SYS y SYSTEM son cuentas necesarias en la base de datos. No se puede
n eliminar.
Base de Datos Oracle 11g: Taller de Administracin I 6-5
Creacin de un Usuario
Seleccionar Administration > Schema > Users &
Privileges > Users y, a continuacin, hacer clic en el
botn Create.
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de un Usuario
En Enterprise Manager, puede gestionar la lista de usuarios de base de datos que
pueden acceder
a la base de datos actual mediante la pgina Users. Puede utilizar esta pgina para
crear, suprimir
y modificar los valores de un usuario.
Para crear un usuario de base de datos, realice los siguientes pasos:
1. En Enterprise Manager Database Control, seleccione Administration > Schema >
Users &
Privileges > Users.
2. Haga clic en el botn Create.
Proporcione la informacin necesaria. Los elementos obligatorios, como Name, apare
cen
marcados con un asterisco.
Las siguientes pginas le proporcionan ms informacin sobre la autenticacin. Los perfi
les se
tratarn ms adelante en esta leccin.
Asigne un tablespace por defecto y un tablespace temporal a cada usuario. De est
a forma puede
controlar dnde se crean sus objetos, en el caso de que los usuarios no especifiqu
en un
tablespace durante la creacin de un objeto.
Si no selecciona un tablespace por defecto, se utiliza el permanente por defecto
definido por el
sistema. Lo mismo sucede con el tablespace temporal: si no especifica ninguno, s
e utiliza el
tablespace temporal definido por el sistema.
Base de Datos Oracle 11g: Taller de Administracin I 6-6
Autenticacin de Usuarios
Usuario
> Autenticacin
Privilegio
Rol
Perfil
Seguridad con
Contrasea
Cuota

Password
External
Global
Copyright 2013, Oracle. Todos los derechos reservados.
Autenticacin de Usuarios
La autenticacin significa verificar la identidad de alguien (un usuario, disposit
ivo u otra
entidad) que desea utilizar datos, recursos o aplicaciones. La validacin de dicha
identidad
establece una relacin de confianza para una mayor interaccin. La autenticacin tambin
permite establecer responsabilidades al posibilitar el enlace de acceso y accion
es con
identidades concretas. Tras la autenticacin, los procesos de autorizacin pueden pe
rmitir o
limitar los niveles de acceso y accin permitidos para dicha entidad.
Al crear un usuario, debe decidir la tcnica de autenticacin que se va a utilizar y
que se podr
modificar posteriormente.
Password: Tambin denominada autenticacin por la base de datos Oracle. Cree cada us
uario
con una contrasea asociada que se debe proporcionar cuando el usuario intente est
ablecer una
conexin. Al configurar una contrasea, puede establecer que venza inmediatamente, l
o que
obliga al usuario a cambiar la contrasea despus de la primera conexin. Si decide ut
ilizar el
vencimiento de contraseas de usuario, asegrese de que los usuarios pueden cambiar
la
contrasea. Algunas aplicaciones no tienen esta funcin.
Las contraseas siempre se cifran de forma automtica y transparente durante las con
exiones de
red (cliente/servidor y servidor/servidor) mediante un algoritmo modificado Data
Encryption
Standard (DES) antes de enviarlas por la red.
Base de Datos Oracle 11g: Taller de Administracin I 6-7
Autenticacin de Usuarios (continuacin)
External: Tambin se denomina autenticacin por el sistema operativo. Los usuarios s
e
pueden conectar a la base de datos Oracle sin especificar un nombre de usuario o
contrasea.
Con la autenticacin externa, la base de datos confa en el servicio de autenticacin
de red o
del sistema operativo subyacente para restringir el acceso a cuentas de base de
datos. No se
utiliza ninguna contrasea de base de datos para este tipo de conexin. Si el servic
io de red o
del sistema operativo lo permite, ste podr autenticar usuarios. Si es as, defina el
parmetro
de inicializacin OS_AUTHENT_PREFIX y utilice este prefijo en los nombres de usuar
io
Oracle. El parmetro OS_AUTHENT_PREFIX define un prefijo que la base de datos Orac
le
agrega al principio del nombre de cuenta de sistema operativo de cada usuario. E
l valor por
defecto de este parmetro es OPS$ para la compatibilidad con versiones anteriores
del
software de Oracle. La base de datos Oracle compara el nombre de usuario con pre
fijo con los
nombres de usuario Oracle de la base de datos cuando un usuario intenta conectar
se. Por
ejemplo, suponga que OS_AUTHENT_PREFIX se ha definido de la siguiente forma:
OS_AUTHENT_PREFIX=OPS$
Si un usuario con una cuenta de sistema operativo denominada tsmith se tiene que
conectar
a una base de datos Oracle y lo va a autenticar el sistema operativo, la base de
datos Oracle
comprueba si hay un usuario de base de datos OPS$tsmith correspondiente y, si es
as,
permite al usuario conectarse. Todas las referencias a un usuario autenticado po
r el sistema
operativo deben incluir el prefijo, como se ve en OPS$tsmith.
Nota: El texto del parmetro de inicializacin OS_AUTHENT_PREFIX es sensible a
maysculas/minsculas en algunos sistemas operativos. Consulte la documentacin de Ora
cle
especfica para el sistema operativo si desea ms informacin sobre este parmetro de
inicializacin.
Global: Mediante la opcin Oracle Advanced Security, la autenticacin global (que es
una
autenticacin potente) permite identificar usuarios mediante biomtrica, certificado
s X509,
dispositivos de elemento y Oracle Internet Directory. Para obtener ms informacin s
obre
mtodos de autenticacin avanzados, consulte el curso Oracle Enterprise Identity
Management.
Base de Datos Oracle 11g: Taller de Administracin I 6-8
Autenticacin de Administradores
Seguridad del Sistema Operativo

Los DBA deben tener privilegios del sistema operativo


para crear y suprimir archivos.
Los usuarios tpicos de base de datos no deben tener
privilegios del sistema operativo para crear o suprimir
archivos de base de datos.
Seguridad del Administrador

Las conexiones SYSBA y SYSOPER se autorizan mediante


un archivo de contraseas o el sistema operativo.
La autenticacin del archivo de contraseas registra el
usuario DBA por el nombre.
La autenticacin del sistema operativo no registra el usuario
concreto.
La autenticacin del sistema operativo tiene prioridad sobre
la autenticacin del archivo de contraseas para SYSDBA y
SYSOPER.
Copyright 2013, Oracle. Todos los derechos reservados.
Autenticacin de Administradores
Seguridad del Sistema Operativo: En UNIX y Linux, por defecto, los DBA pertenece
n al
grupo del sistema operativo install, que posee los privilegios necesarios para c
rear y
suprimir archivos de base de datos.
Seguridad del Administrador: Las conexiones SYSBA y SYSOPER se autorizan nicament
e
despus de la verificacin con el archivo de contraseas o con los privilegios y los p
ermisos
del sistema operativo. Si se utiliza la autenticacin del sistema operativo, la ba
se de datos no
utiliza el nombre de usuario y contrasea proporcionados. La autenticacin del siste
ma
operativo se utiliza si no existe archivo de contraseas, si el nombre de usuario
o la contrasea
proporcionados no estn en ese archivo o si no se proporciona ningn nombre de usuar
io y
contrasea.
No obstante, si la autenticacin se produce mediante el archivo de contraseas, la c
onexin se
registra con el nombre de usuario. Si la autenticacin se produce a travs del siste
ma
operativo, entonces es una conexin CONNECT / que no registra el usuario concreto.
Nota: La autenticacin del sistema operativo tiene prioridad sobre la autenticacin
del archivo
de contraseas. En concreto, si es miembro del grupo OSDBA u OSOPER del sistema
operativo y se conecta como SYSDBA o SYSOPER, lo har con los privilegios administ
rativos
asociados independientemente del nombre de usuario y contrasea que especifique.
Base de Datos Oracle 11g: Taller de Administracin I 6-9
Desbloqueo de Cuentas de Usuario y
Restablecimiento de Contraseas
Seleccionar el usuario y hacer clic en Unlock User.
Copyright 2013, Oracle. Todos los derechos reservados.
Desbloqueo de Cuentas de Usuario y Restablecimiento de Contraseas
Durante la instalacin y la creacin de la base de datos puede desbloquear y restabl
ecer muchas
de las cuentas de usuario de base de datos proporcionadas por Oracle. Si no ha s
eleccionado
desbloquear las cuentas de usuario en ese momento, puede desbloquear los usuario
s y restablecer
las contraseas si selecciona el usuario en la pgina Users y hace clic en Unlock Us
er.
Como alternativa, en la pgina Edit Users puede realizar los siguientes pasos:
1. Introduzca la nueva contrasea en los campos Enter Password y Confirm Password.
2. Active la casilla de control Unlocked.
3. Haga clic en Apply para restablecer la contrasea y desbloquear la cuenta de us
uario.
Base de Datos Oracle 11g: Taller de Administracin I 6-10
Privilegios
Hay dos tipos de privilegios de usuario:
Sistema: Permite a los usuarios realizar
acciones concretas en la base de datos
Usuario
Autenticacin
> Privilegio
Rol
Perfil
Seguridad con
Contrasea
Cuota

Objeto: Permite a los usuarios acceder y


manipular un objeto concreto
HR_DBA
Privilegio de objeto:
Actualizar empleados.
Privilegio del sistema:
Crear sesin.
Copyright 2013, Oracle. Todos los derechos reservados.
Privilegios
Un privilegio es un derecho para ejecutar un tipo concreto de sentencia SQL o pa
ra acceder a un
objeto de otro usuario. La base de datos Oracle le permite controlar lo que los
usuarios pueden o
no pueden hacer en la base de datos. Los privilegios se dividen en dos categoras:

Privilegios del sistema: Cada privilegio del sistema permite a un usuario realiz
ar una
operacin de base de datos concreta o una clase de operaciones de base de datos. P
or
ejemplo, el privilegio para crear tablespaces es un privilegio del sistema. Esto
s privilegios
los puede otorgar el administrador o alguien a quin se le haya proporcionado
explcitamente permiso para administrar el privilegio. Existe ms de cien privilegio
s del
sistema distintos. Muchos de ellos contienen la clusula ANY.
Privilegios de objeto: Los privilegios de objeto permiten a un usuario realizar
una accin
concreta en un objeto determinado, como una tabla, una vista, una secuencia, un
procedimiento, una funcin o un paquete. Sin el permiso concreto, los usuarios slo
pueden
acceder a sus propios objetos. Estos privilegios los puede otorgar el propietari
o de un
objeto, el administrador o alguien al que se le haya proporcionado explcitamente
permiso
para otorgar privilegios sobre el objeto.
Base de Datos Oracle 11g: Taller de Administracin I 6-11
Privilegios del Sistema
Copyright 2013, Oracle. Todos los derechos reservados.
Privilegios del Sistema
Para otorgar privilegios del sistema, haga clic en el separador Systems Privileg
es de la pgina
Edit User. Seleccione los privilegios apropiados de la lista de privilegios disp
onibles y muvalos
a la lista Selected System Privileges haciendo clic en la flecha Move.
Otorgar un privilegio con la clusula ANY significa que el privilegio traspasa las
lneas del
esquema. Por ejemplo, el privilegio CREATE TABLE le permite crear una tabla, per
o slo en su
propio esquema. El privilegio SELECT ANY TABLE le permite realizar selecciones e
n tablas
propiedad de otros usuarios.
Si se activa la casilla de control Admin Option, podr administrar el privilegio d
el sistema y
otorgarlo a otros usuarios.
Considere detenidamente los requisitos de seguridad antes de otorgar permisos de
l sistema.
Algunos privilegios del sistema se suelen otorgar slo a los administradores:
RESTRICTED SESSION: Este privilegio le permite conectarse incluso si la base de
datos
se ha abierto en modo restringido.
Base de Datos Oracle 11g: Taller de Administracin I 6-12
Privilegios del Sistema (continuacin)
SYSDBA y SYSOPER: Estos privilegios le permiten cerrar, iniciar y realizar una o
peracin
de recuperacin y dems tareas administrativas en la base de datos. SYSOPER permite
a un
usuario realizar tareas operativas bsicas pero sin la capacidad de ver los datos
de usuarios.
Incluye los siguientes privilegios del sistema:
-
-
-
-
-
-
STARTUP y SHUTDOWN
CREATE SPFILE
ALTER DATABASE OPEN/MOUNT/BACKUP
ALTER DATABASE ARCHIVELOG
ALTER DATABASE RECOVER (Slo recuperacin completa. Cualquier tipo de
recuperacin incompleta, como UNTIL TIME|CHANGE|CANCEL|CONTROLFILE,
necesita una conexin como SYSDBA.)
RESTRICTED SESSION
El privilegio del sistema SYSDBA autoriza adems la recuperacin incompleta y la
supresin de una base de datos. De hecho, el privilegio del sistema SYSDBA permite
a un
usuario conectarse como usuario SYS.

DROP ANY object: El privilegio DROP ANY le permite suprimir objetos propiedad de
otros usuarios de esquema.
CREATE, MANAGE, DROP y ALTER TABLESPACE: Estos privilegios permiten la
administracin de tablespaces, incluida la creacin, el borrado y el cambio de sus a
tributos.
CREATE ANY DIRECTORY: La base de datos Oracle permite a los desarrolladores llam
ar
a cdigo externo (por ejemplo, una biblioteca C) desde PL/SQL. Como medida de
seguridad, el directorio del sistema operativo en el que reside el cdigo debe est
ar enlazado
a un objeto de directorio Oracle virtual. Con el privilegio CREATE ANY DIRECTORY
,
podra llamar a objetos de cdigo no seguros.
El privilegio CREATE ANY DIRECTORY permite a un usuario crear un objeto de direc
torio
(con acceso de lectura y escritura) en cualquier directorio al que el propietari
o del software
de Oracle pueda acceder. Esto significa que el usuario puede acceder a procedimi
entos
externos en esos directorios. El usuario puede intentar leer y escribir cada arc
hivo de base
de datos directamente, ya sean archivos de datos, redo logs y logs de auditoria.
Asegrese
de que su organizacin posee una estrategia de seguridad que evita que se haga un
uso
incorrecto de privilegios potentes como ste.
GRANT ANY OBJECT PRIVILEGE: Este privilegio le permite otorgar permisos sobre
objetos que no le pertenecen.
ALTER DATABASE y ALTER SYSTEM: Estos privilegios son muy potentes y le permiten
modificar la base de datos y la instancia de Oracle como, por ejemplo, cambiar e
l nombre
de un archivo de datos o vaciar la cach de buffers.
Base de Datos Oracle 11g: Taller de Administracin I 6-13
Privilegios de Objeto
Para otorgar privilegios de
objeto, realice estas tareas:
1. Seleccione el tipo de objeto.
2. Seleccione objetos.
3. Seleccione privilegios.
Copyright 2013, Oracle. Todos los derechos reservados.
Privilegios de Objeto
Para otorgar privilegios de objeto, haga clic en el separador Object Privileges
de la pgina Edit
User. Seleccione el tipo de objeto para el que desea otorgar los privilegios y h
aga clic en el botn
Add. Para seleccionar los objetos para los que desea otorgar privilegios, introd
uzca
<nombre_usuario.nombre_objeto> o seleccinelos en la lista.
A continuacin, seleccione los privilegios adecuados de la lista Available Privile
ges y haga clic
en el botn Move. Cuando termine de seleccionar los privilegios, haga clic en OK.
De nuevo en la pgina Edit User, active la casilla de control Grant si este usuari
o puede otorgar
el mismo acceso a otros usuarios.
Base de Datos Oracle 11g: Taller de Administracin I 6-14
Revocacin de Privilegios del Sistema
con ADMIN OPTION
OTORGAR
DBA
Jeff
Emi
Usuario
Privilegio
Objeto
REVOCAR
DBA
Jeff
Emi
REVOKE CREATE
TABLE FROM jeff;
Copyright 2013, Oracle. Todos los derechos reservados.
Revocacin de Privilegios del Sistema
Los privilegios del sistema, que se han otorgado directamente con un comando GRA
NT, se
pueden revocar mediante la sentencia SQL REVOKE. Los usuarios con el privilegio
del sistema
ADMIN OPTION pueden revocar el privilegio de cualquier otro usuario de la base d
e datos. El
usuario que lleva a cabo la revocacin no tiene que ser el mismo que inicialmente
otorg el
privilegio.
No hay ningn efecto en cascada cuando se revoca un privilegio del sistema,
independientemente de si se le aplica el privilegio ADMIN OPTION.
Lea los siguientes pasos que ilustran este caso:
Supuestos
1. El DBA otorga el privilegio del sistema CREATE TABLE a Jeff con ADMIN OPTION.
2. Jeff crea una tabla.
3. Jeff otorga el privilegio del sistema CREATE TABLE a Emi.
4. Emi crea una tabla.
5. El DBA revoca el privilegio del sistema CREATE TABLE a Jeff.
Resultado
La tabla de Jeff an existe, pero no se pueden crear nuevas tablas.
La tabla de Emi an existe y todava posee el privilegio del sistema CREATE TABLE.
Base de Datos Oracle 11g: Taller de Administracin I 6-15
Revocacin de Privilegios de Objeto
con GRANT OPTION
OTORGAR
Bob
Jeff
Emi
REVOCAR
Bob
Jeff
Emi
Copyright 2013, Oracle. Todos los derechos reservados.
Revocacin de Privilegios de Objeto
Se pueden observar efectos en cascada cuando se revoca un privilegio del sistema
relacionado
con una operacin de lenguaje de manipulacin de datos (DML). Por ejemplo, si se oto
rga el
privilegio SELECT ANY TABLE a un usuario y ese usuario ha creado procedimientos
que
utilizan la tabla, todos los procedimientos contenidos en el esquema del usuario
se tienen que
recompilar antes de que se puedan utilizar de nuevo.
La revocacin de privilegios de objeto tambin produce efectos en cascada mediante W
ITH
GRANT OPTION.
Lea los siguientes pasos que ilustran este caso:
Supuestos
1. A Jeff se le otorga el privilegio de objeto SELECT sobre EMPLOYEES con GRANT
OPTION.
2. Jeff otorga el privilegio SELECT sobre EMPLOYEES a Emi.
3. A continuacin, a Jeff se le revoca el privilegio SELECT. Esta revocacin tiene u
n efecto
en cascada y se aplica tambin a Emi.
Base de Datos Oracle 11g: Taller de Administracin I 6-16
Ventajas de los Roles
Usuario
Autenticacin
Privilegio
> Rol
Perfil
Seguridad con
Contrasea
Cuota

Gestin de privilegios ms sencilla


Gestin de privilegios dinmica
Disponibilidad selectiva de privilegios
Copyright 2013, Oracle. Todos los derechos reservados.
Ventajas de los Roles

Gestin de privilegios ms sencilla: Utilice roles para simplificar la gestin de priv


ilegios.
En lugar de otorgar el mismo juego de privilegios a varios usuarios, puede otorg
ar los
privilegios a un rol y, a continuacin, otorgar dicho rol a cada usuario.
Gestin de privilegios dinmica: Si se modifican los privilegios asociados a un rol,
todos
los usuarios a los que se haya otorgado dicho rol adquieren los privilegios modi
ficados de
forma automtica e inmediata.
Disponibilidad selectiva de privilegios: Los roles se pueden activar o desactiva
r para
activar o desactivar privilegios temporalmente. La activacin de un rol tambin se p
uede
utilizar para verificar si se ha otorgado dicho rol a un usuario.
Base de Datos Oracle 11g: Taller de Administracin I 6-17
Asignacin de Privilegios a Roles y de
Roles a Usuarios
Usuarios
Roles
Jenny
HR_MGR
David
Rachel
HR_CLERK
Privilegios
Suprimir
empleados.
Seleccionar
empleados.
Actualizar
empleados.
Insertar
empleados.
Copyright 2013, Oracle. Todos los derechos reservados.
Asignacin de Privilegios a Roles y de Roles a Usuarios
En la mayora de sistemas, se tarda demasiado en otorgar los privilegios necesario
s a cada
usuario de forma individual y hay muchas posibilidades de que se produzca un err
or. El software
de Oracle permite una gestin de privilegios sencilla y controlada mediante roles.
Los roles son
grupos con nombre de privilegios relacionados que se otorgan a los usuarios o a
otros roles. Los
roles estn diseados para facilitar la administracin de privilegios en la base de da
tos y, por lo
tanto, mejorar la seguridad.
Caractersticas de los Roles
Se otorgan y revocan privilegios de los roles como si el rol fuera un usuario.
Se pueden otorgar y revocar roles de usuarios o de otros roles como si fueran pr
ivilegios
del sistema.
Un rol puede constar de privilegios del sistema y de objeto.
Un rol se puede activar o desactivar para cada usuario al que se le otorgue dich
o rol.
Un rol puede necesitar la activacin de una contrasea.
Los roles no son propiedad de nadie y no estn en ningn esquema.
En el ejemplo de la diapositiva, al rol HR_CLERK se le otorgan privilegios SELEC
T y UPDATE
en la tabla employees. Al rol HR_MGR se le otorgan los privilegios DELETE e INSE
RT en la
tabla employees y el rol HR_CLERK. Se otorga el rol HR_MGR al superior y ste pued
e ahora
realizar selecciones, supresiones, inserciones y actualizaciones en la tabla emp
loyees.
Base de Datos Oracle 11g: Taller de Administracin I 6-18
CONNECT CREATE SESSION RESOURCE CREATE CLUSTER, CREATE INDEXTYPE, CREATE OPERATO
R, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TABLE, CREATE TRIGGER, CREATE TYPE
SCHEDULER_ ADMIN CREATE ANY JOB, CREATE EXTERNAL JOB, CREATE JOB, EXECUTE ANY CL
ASS, EXECUTE ANY PROGRAM, MANAGE SCHEDULER DBA Tiene la mayora de privilegios del
sistema, otros muchos roles. No otorgar a usuarios que no sean administradores.
SELECT_ CATALOG_ ROLE No tiene privilegios del sistema, pero s HS_ADMIN_ROLE y ms
de 1.700 privilegios de objeto en el diccionario de datos
Roles Predefinidos
Copyright 2013, Oracle. Todos los derechos reservados.
Roles Predefinidos
Existen varios roles definidos automticamente para bases de datos Oracle al ejecu
tar los
archivos de comandos de creacin de bases de datos. CONNECT se otorga automticament
e a
cualquier usuario creado con Enterprise Manager. En versiones anteriores de la b
ase de datos
(antes de la base de datos Oracle 11g Versin 2), el rol CONNECT inclua ms privilegi
os, como
CREATE TABLE y CREATE DATABASE LINK, que se han eliminado por motivos de segurid
ad.
Nota: Tenga en cuenta que al otorgar el rol RESOURCE tambin se otorga el privileg
io
UNLIMITED TABLESPACE.
Roles Funcionales
Se crean otros roles que le autorizan a administrar funciones especiales, cuando
se instala esta
funcin. Por ejemplo, XDBADMIN contiene los privilegios necesarios para administra
r la base de
datos XML (Extensible Markup Language) si esta funcin est instalada.
AQ_ADMINISTRATOR_ROLE proporciona privilegios para administrar el servicio de ge
stin de
colas avanzada. HS_ADMIN_ROLE incluye los privilegios necesarios para administra
r servicios
heterogneos. No debe modificar los privilegios otorgados a estos roles funcionale
s sin la ayuda
de los Servicios de Soporte Oracle porque podra desactivar involuntariamente func
iones
necesarias.
Base de Datos Oracle 11g: Taller de Administracin I 6-19
Creacin de un Rol
Seleccionar Administration > Schema > Users & Privileges > Roles.
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de un Rol
Un rol es un grupo con nombre de privilegios relacionados que se otorgan a los u
suarios o a
otros roles. Un DBA gestiona los privilegios mediante roles.
Para crear un rol, realice los siguientes pasos:
1. En Enterprise Manager Database Control, seleccione Administration > Schema >
Users &
Privileges > Roles.
2. Haga clic en el botn Create.
Base de Datos Oracle 11g: Taller de Administracin I 6-20
Roles Seguros
Los roles pueden no ser roles por defecto.
SET ROLE vacationdba;
Los roles se pueden proteger mediante la autenticacin.
Los roles tambin se pueden proteger mediante
programacin.
CREATE ROLE secure_application_role
IDENTIFIED USING <nombre_procedimiento_seguridad>;
Copyright 2013, Oracle. Todos los derechos reservados.
Roles Seguros
Los roles se suelen activar por defecto, lo que significa que si un rol se otorg
a a un usuario,
dicho usuario puede ejercer los privilegios asignados al rol. Es posible:
Hacer que un rol no sea por defecto. Cuando el rol se otorga a un usuario, desac
tive la
casilla de control DEFAULT. El usuario debe ahora activar explcitamente el rol pa
ra
poder ejercer los privilegios de dicho rol.
Exigir la autenticacin adicional de un rol. La autenticacin por defecto de un rol
es None,
pero es posible exigir la autenticacin adicional del rol para poder definirlo.
Crear roles de aplicacin seguros que se puedan activar slo mediante la ejecucin cor
recta
de un procedimiento PL/SQL. El procedimiento PL/SQL puede comprobar varias cosas
como, por ejemplo, la direccin de red del usuario, qu programa est ejecutando el
usuario, la hora del da o cualquier otro elemento necesario para proteger de form
a
adecuada un grupo de permisos.
Base de Datos Oracle 11g: Taller de Administracin I 6-21
Asignacin de Roles a Usuarios
Copyright 2013, Oracle. Todos los derechos reservados.
Asignacin de Roles a Usuarios
Un rol es un juego de privilegios que se pueden otorgar a usuarios o a otros rol
es. Puede utilizar
los roles para administrar privilegios de base de datos. Puede agregar privilegi
os a un rol y,
a continuacin, otorgar dicho rol a un usuario. El usuario puede activar el rol y
ejercer los
privilegios otorgados por el mismo. Un rol contiene todos los privilegios otorga
dos a dicho rol
y todos los privilegios de otros roles que se le hayan asignado.
Por defecto, Enterprise Manager otorga automticamente el rol CONNECT a los usuari
os nuevos.
De esta forma, los usuarios se pueden conectar a la base de datos y crear objeto
s de base de datos
en sus propios esquemas.
Para asignar un rol a un usuario, realice los siguientes pasos:
1. En Enterprise Manager Database Control, seleccione Administration > Schema >
Users &
Privileges > Users.
2. Seleccione el usuario y haga clic en el botn Edit.
3. Haga clic en el separador Roles y, a continuacin, en el botn Edit List.
4. Seleccione el rol deseado en Available Roles y muvalo hasta Selected Roles.
5. Cuando haya asignado todos los roles adecuados, haga clic en el botn OK.
Base de Datos Oracle 11g: Taller de Administracin I 6-22
Perfiles y Usuarios
A los usuarios slo
se les asigna un perfil
en un momento
determinado.
Perfiles:
Usuario
Autenticacin
Privilegio
Rol
> Perfil
Seguridad con
Contrasea
Cuota

Controlan el
consumo de
recursos
Gestionan el
estado de las
cuentas y el
vencimiento de
las contraseas
Copyright 2013, Oracle. Todos los derechos reservados.
Perfiles y Usuarios
Los perfiles imponen un juego con nombre de lmites de recursos en cuanto al uso d
e la base de
datos y de los recursos de la instancia. Los perfiles tambin gestionan el estado
de las cuentas y
establecen limitaciones en cuanto a las contraseas de usuarios (longitud, fecha d
e vencimiento,
etc.). Cada uno de los usuarios se asigna a un perfil y puede pertenecer slo a un
perfil en un
momento determinado. Si los usuarios ya se han conectado cuando cambia su perfil
, el cambio no
se aplica hasta la siguiente conexin.
El perfil por defecto sirve como base para todos los dems perfiles. Como se ilust
ra en la diapositiva,
las limitaciones para un perfil pueden estar especificadas implcitamente (como en
CPU/Session),
ser ilimitadas (como en CPU/Call) o hacer referencia al valor del perfil por def
ecto (como en
Connect Time).
Los perfiles no pueden imponer limitaciones de recursos a los usuarios a menos q
ue el parmetro de
inicializacin RESOURCE_LIMIT est definido en TRUE. Si RESOURCE_LIMIT tiene su valo
r
por defecto FALSE, se ignoran las limitaciones del perfil.
Los perfiles permiten al administrador controlar los siguientes recursos del sis
tema:
CPU: Los recursos de CPU pueden estar limitados por sesin o por llamada. Una limi
tacin de
CPU/Session de 1.000 significa que si una sesin concreta que utiliza este perfil
consume ms
de 10 segundos de tiempo de CPU (las limitaciones de tiempo de CPU se miden en c
entsimas
de segundo), dicha sesin recibe un error y se desconecta:
ORA-02392: exceeded session limit on CPU usage, you are being
logged off
Base de Datos Oracle 11g: Taller de Administracin I 6-23
Perfiles y Usuarios (continuacin)
Una limitacin por llamada tiene el mismo efecto, pero en lugar de limitar la sesin
general
del usuario, evita que cualquier comando individual consuma demasiada CPU. Si CP
U/Call
est limitada y el usuario supera la limitacin, se abortar el comando y el usuario o
btendr
un mensaje de error como el siguiente:
ORA-02393: exceeded call limit on CPU usage

Red/Memoria: Cada sesin de base de datos consume recursos de memoria del sistema
y
(si la sesin es desde un usuario no local al servidor) recursos de red. Puede esp
ecificar lo
siguiente:
- Connect Time: Indica cuntos minutos puede estar conectado un usuario antes de q
ue
se le desconecte automticamente.
- Idle Time: Indica cuntos minutos puede permanecer inactiva la sesin de un usuari
o
antes de que se le desconecte automticamente. El tiempo de inactividad se calcula
slo para el proceso de servidor. No tiene en cuenta la actividad de la aplicacin.
El
lmite IDLE_TIME no se ve afectado por consultas de larga duracin ni otras
operaciones.
- Concurrent Sessions: Indica cuntas sesiones simultneas se pueden crear mediante
una cuenta de usuario de base de datos
- Private SGA: Limita la cantidad de espacio consumido en el rea Global del Siste
ma
(SGA) para ordenacin, fusin de bitmaps, etc. Esta restriccin slo tiene efecto si la
sesin utiliza un servidor compartido. (Los servidores compartidos se tratan en la
leccin titulada Configuracin del Entorno de Red de Oracle .)
E/S de disco: Limita la cantidad de datos que un usuario puede leer en el nivel
de sesin o
de llamada. Reads/Session y Reads/Call ponen una limitacin en el nmero total de
lecturas de la memoria y del disco. Esto se puede llevar a cabo para asegurarse
de que
ninguna sentencia que genere mucha entrada/salida (E/S) utilice demasiada memori
a o
discos.
Los perfiles tambin permiten un lmite compuesto. Los lmites compuestos se basan en
una
combinacin ponderada de CPU/Session, Reads/Session, Connect Time y Private SGA. L
os
lmites compuestos se tratan ms detalladamente en Oracle Database Security Guide.
Para crear un perfil, seleccione Administration > Schema > Users & Privileges >
Profiles y haga
clic en el botn Create.
Nota: El Gestor de Recursos es una alternativa para muchos de los valores de per
fil. Para
obtener ms informacin sobre el Gestor de Recursos, consulte Oracle Database Admini
strator s
Guide.
Base de Datos Oracle 11g: Taller de Administracin I 6-24
Implementacin de las Funciones
de Seguridad con Contrasea
Verificacin de la
Usuario
Autenticacin
Privilegio
Rol
Perfil
> Seguridad con
Contrasea
Cuota
Usuario
Historial de
contraseas
Antigedad y
vencimiento de
complejidad de
las contraseas
Configuracin
de perfiles
Bloqueo de
cuentas
contraseas
Nota: No utilice perfiles que provoquen el vencimiento de las
contraseas SYS, SYSMAN, y DBSNMP y el bloqueo de las cuentas.
Copyright 2013, Oracle. Todos los derechos reservados.
Implementacin de las Funciones de Seguridad con Contrasea
La gestin de contraseas de Oracle se implementa con perfiles de usuario. Los perfi
les pueden
proporcionar varias funciones estndar de seguridad, incluidas las siguientes:
Bloqueo de cuentas: Permite el bloqueo automtico de cuentas durante un perodo defi
nido
cuando los usuarios no han podido conectarse al sistema en el nmero especificado
de intentos.
Los parmetros FAILED_LOGIN_ATTEMPTS especifican el nmero de intentos fallidos de
conexin antes del bloqueo de la cuenta.
El parmetro PASSWORD_LOCK_TIME especifica el nmero de das que se bloquear la
cuenta tras un nmero concreto de intentos fallidos de conexin.
Antigedad y vencimiento de contraseas: Permite a las contraseas de usuario tener un
a
duracin concreta, tras la cual vencen y se deben cambiar.
El parmetro PASSWORD_LIFE_TIME determina la duracin en das tras la que vencer la
contrasea.
El parmetro PASSWORD_GRACE_TIME especifica un perodo de gracia en das para
cambiar la contrasea despus de la primera conexin correcta una vez que haya vencido
la
contrasea.
Nota: El vencimiento de las contraseas y el bloqueo de las cuentas SYS, SYSMAN, y
DBSNMP
impiden que Enterprise Manager funcione adecuadamente. Las aplicaciones deben de
tectar el
mensaje de advertencia de contrasea vencida y manejar el cambio de contrasea. De l
o contrario,
el perodo de gracia vence y se bloquea el usuario sin que este sepa la razn.
Base de Datos Oracle 11g: Taller de Administracin I 6-25
Implementacin de las Funciones de Seguridad con Contrasea (continuacin)
Historial de contraseas: Comprueba la nueva contrasea para garantizar que sta no se
vuelve a utilizar durante un perodo especificado o un nmero concreto de cambios de
contrasea. Estas comprobaciones se pueden implementar de una de las siguientes fo
rmas:
PASSWORD_REUSE_TIME: Especifica que un usuario no puede volver a utilizar una
contrasea durante un nmero de das determinado.
PASSWORD_REUSE_MAX: Especifica el nmero de cambios de contrasea necesarios
antes de que se pueda volver a utilizar la contrasea actual.
Estos dos parmetros se excluyen mutuamente, por lo que cuando uno de los parmetros
se
define en un valor que no sea UNLIMITED (o DEFAULT si el valor del perfil DEFAUL
T est
definido en UNLIMITED), el otro parmetro se debe definir en UNLIMITED.
Verificacin de la complejidad de las contraseas: Realiza una comprobacin de la
complejidad de la contrasea para verificar que cumple determinadas reglas. La com
probacin
se debe asegurar que la contrasea es lo suficientemente compleja para proporciona
r
proteccin contra intrusos que puedan intentar entrar en el sistema adivinando la
contrasea.
El parmetro PASSWORD_VERIFY_FUNCTION asigna una funcin PL/SQL que realiza una
comprobacin de la complejidad de las contraseas antes de asignar una. Las funcione
s de
verificacin de contraseas deben ser propiedad del usuario SYS y deben devolver un
valor
booleano (TRUE o FALSE).
Base de Datos Oracle 11g: Taller de Administracin I 6-26
Creacin de un Perfil de Contrasea
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de un Perfil de Contrasea
Para crear un perfil de contrasea, seleccione Administration > Schema > Users & P
rivileges >
Profiles y haga clic en el botn Create.
Se pueden seleccionar de una lista los valores comunes para cada una de las opci
ones (haga clic
en el icono de linterna para examinar) o bien puede introducir un valor personal
izado.
Todos los perodos de tiempo estn expresados en das, pero tambin se pueden expresar c
omo
fracciones. Hay 1.440 minutos en un da, por lo tanto 5/1440 son cinco minutos.
Enterprise Manager tambin se puede utilizar para editar perfiles de contrasea exis
tentes.
Borrado de un Perfil de Contrasea
En Enterprise Manager, no se puede borrar un perfil utilizado por usuarios. Sin
embargo, si borra
un perfil con la opcin CASCADE (en SQL*Plus, por ejemplo), a todos los usuarios c
on ese
perfil se les asigna de forma automtica el perfil DEFAULT.
Base de Datos Oracle 11g: Taller de Administracin I 6-27
Funcin de Verificacin de Contraseas
Proporcionadas: VERIFY_FUNCTION
La funcin de verificacin de contraseas proporcionadas
aplica las siguientes restricciones de contrasea:

La longitud mnima es de cuatro caracteres.


La contrasea no puede ser igual que el nombre de
usuario.
La contrasea debe tener al menos un carcter
alfabtico, uno numrico y uno especial.
La contrasea debe ser diferente de la contrasea
anterior en al menos tres letras.
Consejo: Utilice esta funcin como plantilla para crear
su propia verificacin de contraseas personalizada.
Copyright 2013, Oracle. Todos los derechos reservados.
Funcin de Verificacin de Contraseas Proporcionadas: VERIFY_FUNCTION
El servidor de Oracle proporciona una funcin de verificacin de la complejidad de l
as
contraseas denominada VERIFY_FUNCTION. Esta funcin se crea con el archivo de
comandos <oracle_home>/rdbms/admin/utlpwdmg.sql. La funcin de verificacin
de la complejidad de las contraseas se debe crear en el esquema SYS. Se puede uti
lizar como
plantilla para su verificacin de contraseas personalizada.
Adems de crear VERIFY_FUNCTION, el archivo de comandos utlpwdmg tambin cambia el
perfil DEFAULT con el siguiente comando ALTER PROFILE:
ALTER PROFILE default LIMIT
PASSWORD_LIFE_TIME 60
PASSWORD_GRACE_TIME 10
PASSWORD_REUSE_TIME 1800
PASSWORD_REUSE_MAX UNLIMITED
FAILED_LOGIN_ATTEMPTS 3
PASSWORD_LOCK_TIME 1/1440
PASSWORD_VERIFY_FUNCTION verify_function;
Recuerde que cuando se crean usuarios, se les asigna el perfil DEFAULT a menos q
ue se
especifique otro.
Base de Datos Oracle 11g: Taller de Administracin I 6-28
Asignacin de Cuota
a Usuarios
Usuario
Autenticacin
Privilegio
Rol
Perfil
Seguridad con
Contrasea
> Cuota
Se debe asignar una cuota a los usuarios que no
tienen el privilegio del sistema UNLIMITED
TABLESPACE para que puedan crear objetos en un
tablespace. Las cuotas pueden ser:

Un valor concreto en megabytes o kilobytes


Ilimitadas
Copyright 2013, Oracle. Todos los derechos reservados.
Asignacin de Cuota a Usuarios
La cuota es un espacio asignado en un tablespace determinado. Por defecto, un us
uario no tiene
ninguna cuota en ningn tablespace. Dispone de tres opciones para proporcionar una
cuota de
usuario en un tablespace.

Unlimited: Permite al usuario utilizar todo el espacio disponible en el tablespa


ce.
Value: Es un nmero de kilobytes o megabytes que el usuario puede utilizar. Esto n
o
garantiza que el espacio se reserve para el usuario. Este valor puede ser mayor
o menor que
el espacio actual disponible en el tablespace.
Privilegio del sistema UNLIMITED TABLESPACE: Este privilegio del sistema sustitu
ye
a todas las cuotas de tablespace individuales y proporciona al usuario una cuota
ilimitada
en todos los tablespaces, incluidos SYSTEM y SYSAUX. Este privilegio se debe oto
rgar con
cautela.
Nota: Tenga en cuenta que al otorgar el rol RESOURCE tambin se otorga este privil
egio.
No debe proporcionar cuota a los usuarios en el tablespace SYSTEM o SYSAUX. Norm
almente,
slo los usuarios SYS y SYSTEM deben poder crear objetos en el tablespace SYSTEM o
SYSAUX.
No necesita cuota en un tablespace temporal asignado ni en ningn tablespace de de
shacer.
Base de Datos Oracle 11g: Taller de Administracin I 6-29
Asignacin de Cuota a Usuarios (continuacin)
Cundo utiliza cuotas la instancia de Oracle?
Las cuotas se utilizan cuando un usuario crea o ampla un segmento.
Qu actividades no cuentan para la cuota?
Las actividades que no utilizan espacio en el tablespace asignado no afectan a l
a cuota,
como la creacin de vistas o el uso de tablespaces temporales.
Cundo se repone una cuota?
La cuota se repone cuando los objetos propiedad del usuario se borran con la clus
ula
PURGE o los objetos de la papelera de reciclaje se depuran automticamente.
Base de Datos Oracle 11g: Taller de Administracin I 6-30
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Crear y gestionar cuentas de usuario de base de datos


Autenticar usuarios
Asignar reas de almacenamiento por defecto
(tablespaces)
Otorgar y revocar privilegios
Crear y gestionar roles
Crear y gestionar perfiles
Implementar funciones estndar de seguridad con
contrasea
Controlar el uso de recursos por los usuarios
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 6-31
Visin General de la Prctica:
Administracin de Usuarios
En esta prctica se abordan los siguientes temas:

Creacin de un perfil para limitar el consumo de


recursos
Creacin de dos roles:
HRCLERK
HRMANAGER
Creacin de cuatro usuarios nuevos:
Un superior y dos oficinistas
Un usuario de esquema para la prxima sesin
prctica
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 6-32
Gestin de Objetos de Esquema
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para lo
siguiente:

Definir objetos de esquema y tipos de dato


Crear y modificar tablas
Definir restricciones
Visualizar las columnas y el contenido de una tabla
Crear ndices
Crear vistas
Crear secuencias
Explicar el uso de tablas temporales
Usar el diccionario de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 7-2
Qu es un Esquema?
> Esquema
Restricciones
ndices
Vistas
Secuencias
Tablas Temporales
Diccionario de Datos
propietario de
Usuario HR
Esquema HR
Copyright 2013, Oracle. Todos los derechos reservados.
Qu es un Esquema?
Un esquema es una recopilacin de objetos de base de datos propiedad de un usuario
en
particular. Normalmente, en una base de datos de produccin, este usuario no repre
senta una
persona, sino una aplicacin. Un esquema tiene el mismo nombre que el usuario prop
ietario del
esquema. Los objetos de esquema son estructuras lgicas que hacen referencia direc
ta a datos de
la base de datos. Los objetos de esquema incluyen estructuras como tablas, vista
s e ndices.
Puede crear y manipular objetos de esquema mediante SQL o Enterprise Manager. Cu
ando
utiliza Enterprise Manager, el SQL subyacente se genera automticamente.
Nota: Un esquema no tiene que estar relacionado necesariamente de forma directa
con un
tablespace. Puede definir configuraciones de modo que los objetos de un esquema
puedan estar
en diferentes tablespaces, y un tablespace pueda contener objetos de diferentes
esquemas.
Base de Datos Oracle 11g: Taller de Administracin I 7-3
Qu es un Esquema? (continuacin)
Al crear la base de datos, se crean automticamente varios esquemas. Hay dos de es
pecial
importancia:

Esquema SYS: Contiene el diccionario de datos, como se describe en la seccin titu


lada
Administracin de Seguridad del Usuario .
Esquema SYSTEM: Contiene tablas y vistas adicionales en las que se almacena
informacin administrativa. Se describe en la leccin titulada Administracin de
Seguridad del Usuario .
Durante una instalacin completa de una base de datos Oracle, se instalan automtica
mente
esquemas de ejemplo. Los esquemas de ejemplo sirven para proporcionar una plataf
orma comn
para ejemplos de la documentacin y el plan de estudios de Oracle. Son un juego de
esquemas
entrelazados destinados a proporcionar ejemplos de diferentes niveles de complej
idad e incluyen
lo siguiente:
HR: El esquema Human Resources es un esquema sencillo para introducir temas bsico
s.
Una extensin de este esquema da soporte a las demostraciones de Oracle Internet
Directory.
OE: El esquema Order Entry se emplea en asuntos de complejidad intermedia. Hay u
na
gran variedad de tipos de dato disponibles en el esquema OE. El subesquema OC (O
nline
Catalog) es una recopilacin de objetos de base de datos objeto-relacional incorpo
rados en
el esquema OE.
PM: El esquema Product Media est dedicado a tipos de dato multimedia.
QS: El esquema Queued Shipping contiene un juego de esquemas que se utilizan par
a
demostrar las capacidades de Oracle Advanced Queuing.
SH: El esquema Sales History permite demostraciones con cantidades mayores de da
tos.
Una extensin de este esquema proporciona soporte para el procesamiento analtico
avanzado.
Base de Datos Oracle 11g: Taller de Administracin I 7-4
Acceso a Objetos de Esquema
Copyright 2013, Oracle. Todos los derechos reservados.
Acceso a Objetos de Esquema
Puede acceder rpidamente a varios tipos de objetos de esquema desde la regin Schem
a de la
pgina Database Administration.
Despus de hacer clic en uno de los enlaces, se mostrar la pgina Results. En la regin
Search
de la pgina, puede introducir un nombre de esquema y un nombre de objeto para bus
car un
objeto concreto. Adems, puede buscar otros tipos de objetos en la regin Search sel
eccionando
el tipo de objeto en la lista desplegable. La lista desplegable incluye tipos de
objetos adicionales
que no se muestran como enlaces en la pgina Database Administration.
Base de Datos Oracle 11g: Taller de Administracin I 7-5
Nomenclatura de Objetos de Base de Datos

Los nombres deben tener de 1 a 30 bytes de longitud


con las siguientes excepciones:
Los nombres de bases de datos se limitan a 8 bytes.
Los nombres de enlaces de base de datos pueden tener
hasta 128 bytes de longitud.
Los nombres sin entrecomillar no pueden ser
palabras reservadas de Oracle.
Los nombres sin entrecomillar deben empezar por un
carcter alfabtico del juego de caracteres de la base
de datos.
No se recomiendan nombres entre
comillas.
Copyright 2013, Oracle. Todos los derechos reservados.
Nomenclatura de Objetos de Base de Datos
Al asignar un nombre a un objeto de la base de datos, puede introducir el nombre
con comillas
dobles ( ). Si lo hace, puede romper varias reglas de nomenclatura mencionadas en l
a
diapositiva. Sin embargo, no se recomienda esta operacin porque si asigna un nomb
re a un
objeto de esta forma, siempre debe hacer referencia a l con el nombre entre comil
las. Por
ejemplo, si asigna a una tabla el nombre Local Temp , debe realizar lo siguiente:
SQL> select * from "Local Temp";
TEMP_DATE LO_TEMP HI_TEMP
--------- ---------- ----------
01-DEC-03 30 41
Si no introduce adecuadamente el nombre en maysculas o minsculas, recibir un error:
SQL> select * from "local temp";
select * from "local temp"
*
ERROR at line 1:
ORA-00942: table or view does not exist
Los nombres sin entrecomillar se almacenan en mayscula y no son sensibles a
maysculas/minsculas. Cuando se procesa una sentencia SQL, los nombres sin entrecom
illar se
convierten a maysculas.
Base de Datos Oracle 11g: Taller de Administracin I 7-6
Nomenclatura de Objetos de Base de datos (continuacin)
Los identificadores sin entrecomillar slo pueden incluir caracteres alfanumricos d
el juego de
caracteres de la base de datos y el carcter de subrayado (_), el signo del dlar ($
) y el signo de
almohadilla numrica (#). Los enlaces de base de datos tambin pueden contener punto
s (.) y el
signo de arroba (@). No se recomienda el uso de $ y # en identificadores sin ent
recomillar.
Los identificadores entre comillas pueden incluir cualquier carcter y signo de pu
ntuacin, as
como espacios. Sin embargo, ni los identificadores entre comillas ni los sin ent
recomillar pueden
contener comillas dobles.
Base de Datos Oracle 11g: Taller de Administracin I 7-7
Especificacin de Tipos de Dato en Tablas
Tipos de dato comunes:

CHAR(size [BYTE|CHAR]): Datos de tipo carcter


de longitud fija en bytes o caracteres especificada
por size
VARCHAR2(size [BYTE|CHAR]): Cadena de
caracteres de longitud variable con una longitud
mxima en bytes o caracteres especificada por
size
DATE: Rango de fechas vlido del 1 de enero de
4712 AC hasta el 31 de diciembre de 9999 DC
NUMBER(p,s): Nmero con precisin p y escala s
Copyright 2013, Oracle. Todos los derechos reservados.
Especificacin de Tipos de Dato en Tablas
Al crear una tabla, debe especificar un tipo de dato para cada una de sus column
as. Al crear un
procedimiento o funcin, debe especificar un tipo de dato para cada uno de sus arg
umentos.
Estos tipos de dato definen el dominio de valores que puede incluir cada columna
o que puede
tener cada argumento.
Entre los tipos de dato incorporados en la base de datos Oracle se incluyen los
siguientes:
CHAR: Datos de tipo carcter de longitud fija en bytes o caracteres especificada p
or size.
El tamao mximo es 2.000 bytes o caracteres, y el tamao por defecto y mnimo es 1 byte
.
-
-
BYTE indica que la semntica de la columna es de longitud en byte.
CHAR indica que la semntica de la columna es de caracteres.
VARCHAR2: Cadena de caracteres de longitud variable con una longitud en bytes o
caracteres especificada por size. El tamao mximo es 4.000 bytes. Debe especificar
el
tamao para VARCHAR2.
DATE: Rango de fechas vlido del 1 de enero de 4712 AC hasta el 31 de diciembre de
9999 DC. Tambin almacena el tiempo: horas, minutos y segundos.
NUMBER: Nmero que tiene precisin p y escala s. El rango de precisin es de 1 a 38. E
l
rango de escala es de -84 a 127.
Base de Datos Oracle 11g: Taller de Administracin I 7-8
Especificacin de Tipos de Dato en Tablas (continuacin)
BINARY_FLOAT: Es un nmero de coma flotante de 32 bits. Este tipo de dato necesita
5 bytes, incluido el byte de longitud.
BINARY_DOUBLE: Es un nmero de coma flotante de 64 bits. Este tipo de dato necesit
a
9 bytes.
FLOAT(p): Es un tipo de dato ANSI (American National Standards Institute). El ti
po de
dato FLOAT es un nmero de coma flotante con precisin p binaria. La precisin por
defecto para este tipo de dato es 126 binaria o 38 decimal.
INTEGER: Equivale a NUMBER(p,0).
NCHAR(length): El tipo de dato NCHAR es slo Unicode. Cuando crea una tabla con
una columna NCHAR, define la longitud de la columna en caracteres. El juego de c
aracteres
nacional se define al crear la base de datos. La longitud mxima de una columna vi
ene
determinada por la definicin del juego de caracteres nacional. Las especificacion
es de
ancho del tipo de dato NCHAR hacen referencia al nmero de caracteres. El tamao
mximo de columna permitido es 2.000 bytes. Si inserta un valor menor que la longi
tud de
columna, la base de datos Oracle rellena en blanco el valor hasta alcanzar la lo
ngitud de la
columna. No puede insertar un valor CHAR en una columna NCHAR, ni insertar un va
lor
NCHAR en una columna CHAR.
NVARCHAR2(size [BYTE|CHAR]): El tipo de dato NVARCHAR2 es slo Unicode.
Es como NCHAR, excepto en que la longitud mxima es 4.000 bytes y que no se rellen
a en
blanco.
LONG: Es un dato de carcter de longitud variable, hasta 2 GB o 231 -1 bytes. El t
ipo de
dato LONG est obsoleto; utilice en su lugar el tipo de dato de objeto grande (LOB
).
LONG RAW: Son datos binarios raw de longitud variable, hasta 2 GB.
RAW(size): Son datos binarios raw con una longitud en bytes especificada por siz
e.
El tamao mximo es 2.000 bytes. Debe especificar el tamao para un valor RAW.
ROWID: Es una cadena de base 64 que representa la direccin nica de una fila en su
tabla
correspondiente. Este tipo de dato es principalmente para valores devueltos por
la
pseudocolumna ROWID.
UROWID: Es una cadena de base 64 que representa la direccin lgica de una fila de u
na
tabla organizada por ndices. El tamao opcional es el de una columna de tipo UROWID
.
El tamao mximo y por defecto es 4.000 bytes.
BLOB: Es un objeto grande binario.
CLOB: Es un objeto grande de caracteres que contiene caracteres de un solo byte
o
multibyte. Se soportan los juegos de caracteres de ancho fijo y variable y ambos
utilizan el
juego de caracteres de la base de datos CHAR.
Base de Datos Oracle 11g: Taller de Administracin I 7-9
Especificacin de Tipos de Dato en Tablas (continuacin)
NCLOB: Es un objeto grande de caracteres que contiene caracteres Unicode. Se sop
ortan
los juegos de caracteres de ancho fijo y variable y ambos utilizan el juego de c
aracteres de
la base de datos NCHAR. Almacena datos del juego de caracteres nacional.
Nota: El tamao mximo para todos los tipos de dato LOB (BLOB, CLOB y NCLOB) es:
(4 GB - 1) * (el valor de CHUNK).
CHUNK es un atributo opcional que se puede establecer al definir un LOB. Especif
ica el
nmero de bytes que se van a asignar para la manipulacin de LOB. Si el tamao no es u
n
mltiplo del tamao del bloque de base de datos, la base de datos redondea en bytes
hasta
el siguiente mltiplo. Por ejemplo, si el tamao del bloque de base de datos es 2.04
8 y el
tamao de CHUNK es 2.050, la base de datos asigna 4.096 bytes (2 bloques). El valo
r
mximo es 32.768 (32 K), que es el mayor tamao del bloque de base de datos Oracle
permitido. El tamao de CHUNK por defecto es un bloque de base de datos Oracle.
BFILE: El tipo de dato BFILE contiene un localizador a un archivo binario grande
almacenado fuera de la base de datos. Permite el acceso de E/S de flujo de bytes
a LOB
externos que residen en el servidor de bases de datos. El tamao mximo es 4 GB.
TIMESTAMP(fractional_seconds_precision): Con este tipo de dato, puede
especificar los valores de fecha (ao, mes y da), as como los valores de tiempo (hor
a,
minuto y segundo), donde fractional_seconds_precision es el nmero de
dgitos en la parte fraccional de un segundo. Los valores aceptados son 0 y 9. El
valor por
defecto es 6.
Para obtener una lista completa de los tipos de dato incorporados y los tipos de
finidos por el
usuario, consulte Oracle Database SQL Reference.
Base de Datos Oracle 11g: Taller de Administracin I 7-10
Creacin y Modificacin de Tablas
Especificar el nombre
de la tabla y el esquema.
Especificar los nombres de
columna, los tipos de dato
y las longitudes.
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin y Modificacin de Tablas
Las tablas son las unidades bsicas de almacenamiento de datos en una base de dato
s Oracle.
Contienen todos los datos a los que pueden acceder los usuarios. Cada tabla tien
e columnas y
filas.
Creacin de una Tabla
Para crear una tabla mediante Enterprise Manager, realice los siguientes pasos:
1. Haga clic en Tables en la regin Schema de la pgina Administration. Aparecer la pg
ina
Tables.
2. Si conoce el nombre del esquema, introdzcalo completo o en parte en el campo S
chema de
la regin Search. Si no sabe el nombre del esquema, haga clic en el icono de linte
rna situado
junto al campo Schema. Aparecer la ventana Search and Select: Schema. Puede exami
nar
los nombres de esquema y seleccionar el que est buscando.
3. Haga clic en Create. Aparecer la pgina Create Table: Table Organization.
4. Acepte el valor por defecto Standard, Heap Organized haciendo clic en Continu
e. Aparecer
la pgina Create Table.
5. Introduzca el nombre de la tabla en el campo Name.
6. Introduzca el nombre del esquema en el campo Schema o haga clic en el icono d
e linterna
para llamar a la funcin de bsqueda.
Base de Datos Oracle 11g: Taller de Administracin I 7-11
Creacin y Modificacin de Tablas (continuacin)
7. Introduzca el nombre del tablespace en el campo Tablespace o haga clic en el
icono de
linterna para llamar a la funcin de bsqueda.
8. En la regin Columns, introduzca el nombre de columna y los tipos de dato.
9. Haga clic en OK. Aparecer un mensaje de actualizacin que indica que la tabla se
ha
creado correctamente.
Modificacin de una Tabla
Puede modificar una tabla con Enterprise Manager tal como se describe en los pas
os siguientes.
En este ejemplo, se agrega una columna a la tabla.
1. En la pgina Tables, seleccione la tabla en la lista de resultados y haga clic
en Edit.
2. En la pgina Edit Table, haga clic en el botn Add 5 Table Columns. Aparecer una l
ista
de columnas editables.
3. Introduzca el nombre de columna, el tipo de dato y el tamao.
4. Haga clic en Apply. Aparecer un mensaje de actualizacin que indica que la tabla
se ha
modificado correctamente.
Base de Datos Oracle 11g: Taller de Administracin I 7-12
Esquema
Descripcin de la
Integridad de los Datos
> Restricciones
ndices
Vistas
Secuencias
Tablas Temporales
Diccionario de Datos
JOB_HISTORY
EMPLOYEE_ID
(PK,FK)
START_DATE (PK)
END_DATE
JOB_ID (FK)
DEPARTMENT_ID (FK)
EMPLOYEES
EMPLOYEE_ID (PK)
FIRST_NAME
LAST_NAME
EMAIL
DEPARTMENTS
DEPARTMENT_ID (PK)
DEPARTMENT_NAME
MANAGER_ID
LOCATION_ID (FK)
LOCATIONS
LOCATION_ID (PK)
STREET_ADDRESS
POSTAL_CODE
CITY
STATE_PROVINCE
COUNTRY_ID (FK)
PHONE_NUMBER
HIRE_DATE
JOB_ID (FK)
SALARY
COMMISION_PCT
MANAGER_ID (FK)
DEPARTMENT_ID (FK)
JOBS
JOB_ID (PK)
JOB_TITLE
COUNTRIES
COUNTRY_ID (PK)
COUNTRY_NAME
REGION_ID (FK)
MIN_SALARY
MAX_SALARY
REGIONS
REGION_ID (PK)
REGION_NAME
Copyright 2013, Oracle. Todos los derechos reservados.
Descripcin de la Integridad de los Datos
Puede utilizar las siguientes restricciones de integridad para imponer limitacio
nes en la entrada
de valores de columna:
NOT NULL: Por defecto, todas las columnas de una tabla permiten valores nulos. N
ulo
significa la ausencia de un valor. Una restriccin NOT NULL necesita que una colum
na de
una tabla no contenga ningn valor nulo. Por ejemplo, puede definir una restriccin
NOT
NULL para exigir que se introduzca un valor en la columna LAST_NAME de todas las
filas
de la tabla EMPLOYEES.

Clave UNIQUE: Una restriccin de integridad de clave UNIQUE necesita que todos los
valores de una columna o juego de columnas (clave) sean nicos; es decir, que no h
aya dos
filas de una tabla con valores duplicados en una columna o juego de columnas con
creto.
Por ejemplo, se define una restriccin de clave UNIQUE en la columna
DEPARTMENT_NAME de la tabla DEPARTMENTS para no permitir filas con nombres de
departamento duplicados. Salvo en casos especiales, esta restriccin se aplica con
un ndice
nico.
PRIMARY KEY: Todas las tablas de la base de datos pueden tener como mximo una
restriccin PRIMARY KEY. Los valores del grupo de una o ms columnas sujetas a esta
restriccin constituyen el identificador nico de la fila. En efecto, cada fila se d
enomina
por sus valores de clave primaria.
Base de Datos Oracle 11g: Taller de Administracin I 7-13
Descripcin de la Integridad de los Datos (continuacin)
La implementacin de la restriccin de integridad PRIMARY KEY del servidor de Oracle
garantiza que se cumplan las dos condiciones siguientes:
- No puede haber dos filas de una tabla que tengan valores duplicados en la colu
mna o
juego de columnas especificado.
- Las columnas de clave primaria no permiten valores nulos. Es decir, debe exist
ir un
valor para las columnas de clave primaria en cada fila.
En circunstancias normales, la base de datos aplica las restricciones PRIMARY KE
Y
utilizando ndices. La restriccin de clave primaria creada para la columna
DEPARTMENT_ID de la tabla DEPARTMENTS se aplica mediante la creacin implcita de
lo siguiente:
- Un ndice nico en dicha columna
- Una restriccin NOT NULL para dicha columna

Restricciones de integridad referencial: Distintas tablas de una base de datos r


elacional
se pueden relacionar por columnas comunes y se deben mantener las reglas que rig
en la
relacin de las columnas. Las reglas de integridad referencial garantizan que se m
antengan
estas relaciones.
Una restriccin de integridad referencial necesita que para cada fila de una tabla
, el valor
de la clave ajena coincida con un valor de una clave principal.
Por ejemplo, se define una clave ajena en la columna DEPARTMENT_ID de la tabla
EMPLOYEES. De esta forma se garantiza que todos los valores de esta columna coin
cidan
con un valor de la clave primaria de la tabla DEPARTMENTS. Por lo tanto, no pued
en
existir nmeros de departamento errneos en la columna DEPARTMENT_ID de la tabla
DEPARTMENTS.
Otro tipo de restriccin de integridad referencial se denomina restriccin de integr
idad de
autorreferencia. Este tipo de clave ajena hace referencia a una clave principal
de la misma
tabla.
Restricciones de control: Una restriccin de integridad CHECK en una columna o jue
go de
columnas necesita que una condicin concreta se cumpla o sea desconocida para toda
s las
filas de la tabla. Si una sentencia de lenguaje de manipulacin de datos (DML) tie
ne como
resultado que la condicin de la restriccin CHECK se evale como falsa, se realizar un
rollback de la sentencia.
Base de Datos Oracle 11g: Taller de Administracin I 7-14
Definicin de Restricciones
Copyright 2013, Oracle. Todos los derechos reservados.
Definicin de Restricciones
Para agregar una restriccin a una tabla con Enterprise Manager, realice los sigui
entes pasos:
1. Seleccione la tabla en la pgina Tables y haga clic en Edit.
2. Haga clic en Constraints. Se mostrar la pgina Constraints con todas las restric
ciones
definidas en la tabla.
3. Seleccione el tipo de restriccin que desea agregar en la lista desplegable y h
aga clic en Add.
4. Introduzca la informacin adecuada para el tipo de restriccin que est definiendo.
Haga clic
en OK.
Base de Datos Oracle 11g: Taller de Administracin I 7-15
101 102 103
22 49 16 5
Violaciones de Restricciones
Algunos ejemplos de cmo se puede violar una
restriccin son:

Insercin de un valor de clave primaria duplicado


Supresin del principal de una fila secundaria en
una restriccin de integridad referencial
Actualizacin de una columna a un valor que est
fuera de los lmites de una restriccin de control
X
ID
AGE
30
101
Copyright 2013, Oracle. Todos los derechos reservados.
Violaciones de Restricciones
La violacin de una restriccin tiene lugar cuando se ejecuta DML, y ste no cumple la
restriccin. Las violaciones de las restricciones pueden adoptar muchas formas, po
r ejemplo:

Unicidad: Se realiza el intento de tener valores duplicados en una columna que t


iene una
restriccin nica, como el caso en que una columna es la clave primaria o est indexad
a de
forma nica.
Integridad referencial: Se viola la regla de que cada fila secundaria tiene una
fila
principal.
Control: Se realiza el intento de almacenar un valor en una columna que no sigue
las
reglas definidas para ella. Por ejemplo, una columna AGE podra tener una restricc
in de
control de modo que al aplicarla sea un nmero positivo.
Base de Datos Oracle 11g: Taller de Administracin I 7-16
Estados de Restricciones
DISABLE
NOVALIDATE
DISABLE
VALIDATE
ENABLE
NOVALIDATE
ENABLE
VALIDATE
No DML
Datos nuevos
Datos existentes
Copyright 2013, Oracle. Todos los derechos reservados.
Estados de Restricciones
Para abordar mejor las situaciones en las que los datos deben estar temporalment
e en estado de
violacin de una restriccin, puede designar que una restriccin tenga diversos estado
s. Una
restriccin de la integridad se puede activar (ENABLE) o desactivar (DISABLE). Si
una
restriccin est activada, los datos se comprueban conforme se introducen o actualiz
an en la base
de datos. Se impide la entrada de los datos que no se ajustan a la regla de la r
estriccin. Si una
restriccin est desactivada, los datos que no guardan conformidad con la regla se p
ueden
introducir en la base de datos. Una restriccin de la integridad puede tener uno d
e los siguientes
estados:
DISABLE NOVALIDATE
DISABLE VALIDATE
ENABLE NOVALIDATE
ENABLE VALIDATE
Base de Datos Oracle 11g: Taller de Administracin I 7-17
Estados de Restricciones (continuacin)
DISABLE NOVALIDATE: Puede que tanto los datos nuevos como los ya existentes no s
e
ajusten a la restriccin porque no se han comprobado. Este estado se usa con frecu
encia cuando
los datos provienen de un origen ya validado y la tabla es de slo lectura, de mod
o que no se
introduce ningn dato nuevo en la tabla.
DISABLE VALIDATE: Si una restriccin tiene este estado, no se permite ninguna modi
ficacin
de las columnas restringidas porque no sera coherente haber validado los datos ex
istentes y
luego permitir que en la tabla se introduzcan datos sin comprobar. Este estado s
e usa con
frecuencia cuando los datos existentes se deben validar pero los datos no se van
a modificar y el
ndice ya no es necesario para el rendimiento.
ENABLE NOVALIDATE: Los datos nuevos se ajustan a la restriccin pero los existente
s estn en
un estado desconocido. Este estado se usa con frecuencia para que se puedan corr
egir las
violaciones de restricciones existentes y, al mismo tiempo, no se permita que se
introduzcan
nuevas violaciones en el sistema.
ENABLE VALIDATE: Los datos nuevos y existentes se ajustan a la restriccin. ste es
el estado
habitual y por defecto de una restriccin.
Base de Datos Oracle 11g: Taller de Administracin I 7-18
Comprobacin de Restricciones
Las restricciones se comprueban en el momento de:

Ejecucin de la sentencia, en el caso de


restricciones sin diferir
COMMIT, para restricciones diferidas
Caso: Sentencia DML, seguida de COMMIT
1
2
3
4
Restricciones sin diferir
comprobadas
COMMIT emitida
Restricciones sin diferir
comprobadas
COMMIT terminada
Copyright 2013, Oracle. Todos los derechos reservados.
Comprobacin de Restricciones
Puede diferir la comprobacin de la validez de las restricciones hasta que termine
la transaccin.
Restricciones sin diferir, conocidas tambin como restricciones inmediatas, se apl
ican al final
de las sentencias DML. La violacin de una restriccin ocasiona el rollback de la se
ntencia. Si
una restriccin provoca una accin, por ejemplo, delete cascade, sta se lleva a cabo
como
parte de la sentencia que la ha ocasionado. Las restricciones definidas como no
diferibles no se
pueden cambiar a diferibles.
Las restricciones diferidas son aquellas que solo se comprueban cuando se confir
ma una
transaccin. Si en el momento de la confirmacin (COMMIT) se detecta alguna violacin
de
restriccin, se produce el rollback de toda la transaccin. Estas restricciones son t
iles
principalmente cuando las filas principal y secundaria de una relacin de clave aj
ena se
introducen al mismo tiempo, como en el caso de un sistema de entrada de pedidos
en el que el
pedido y los artculos del pedido se introducen a la vez.
Las restricciones definidas como diferibles se pueden especificar de dos maneras
:
Initially immediate, especifica que, por defecto, debe funcionar como restriccin
inmediata a menos que se establezca explcitamente lo contrario.
Initially deferred, especifica que, por defecto, la restriccin slo se debe aplicar
al
final de la transaccin.
Base de Datos Oracle 11g: Taller de Administracin I 7-19
Creacin de Restricciones con SQL:
Ejemplos
a
b
c
ALTER TABLE countries
ADD (UNIQUE(country_name) ENABLE NOVALIDATE);
ALTER TABLE employees ADD CONSTRAINT pk PRIMARY KEY
(employee_id)
CREATE TABLE t1 (pk NUMBER PRIMARY KEY, fk NUMBER, c1 NUMBER,
c2 NUMBER,
CONSTRAINT ri FOREIGN KEY (fk) REFERENCES t1,CONSTRAINT ck1
CHECK (pk > 0 and c1 > 0));
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de Restricciones con SQL: Ejemplos
En la diapositiva se muestran tres ejemplos de creacin de restricciones:
a. Una vez que se ejecuta esta sentencia, las inserciones o actualizaciones real
izadas en la
tabla COUNTRIES tienen que tener un valor COUNTRY_NAME que sea nico. Sin
embargo, es posible que cuando se emite esta sentencia, ya existan valores
COUNTRY_NAME en la tabla que no son nicos. La palabra clave NOVALIDATE indica
que se deben ignorar. Slo se restringen las nuevas filas.
b. Esta sentencia agrega una clave primaria a la tabla EMPLOYEE. El nombre de la
restriccin
es PK y la clave primaria es la columna EMPLOYEE_ID.
c. Esta sentencia define restricciones en el momento de crearse la tabla en luga
r de usar
posteriormente una sentencia ALTER TABLE. La restriccin RI impone que los valores
de
la columna FK deben estar presentes en la columna de clave primaria de la tabla
T1. La
restriccin CK1 impone que las columnas PK y C1 sean mayores que cero.
Nota: Toda restriccin tiene un nombre. Si no se proporciona uno en la sentencia D
DL,
el sistema asigna un nombre, que empieza por SYS_.
Base de Datos Oracle 11g: Taller de Administracin I 7-20
Visualizacin de las Columnas de una Tabla
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin de las Columnas de una Tabla
Para visualizar los atributos de una tabla mediante Enterprise Manager, realice
los siguientes
pasos:
1. Haga clic en el enlace Tables en la regin Schema de la pgina Database Administr
ation
2. Seleccione una tabla de la lista de resultados y haga clic en el botn View par
a ver los
atributos de la tabla.
Base de Datos Oracle 11g: Taller de Administracin I 7-21
Visualizacin del Contenido de una Tabla
Copyright 2013, Oracle. Todos los derechos reservados.
Visualizacin del Contenido de una Tabla
Para visualizar las filas de una tabla mediante Enterprise Manager, realice los
siguientes pasos:
1. Seleccione la tabla en la pgina Tables.
2. Seleccione View Data en el men Actions y haga clic en Go.
Aparecer la pgina View Data for Table. Los datos de fila para la tabla se mostrarn
en la
regin Result. El recuadro Query muestra la consulta SQL ejecutada para producir l
os resultados.
En esta pgina, puede hacer clic en cualquier nombre de columna y ordenar los dato
s de la
columna en orden ascendente o descendente. Si desea cambiar la consulta, haga cl
ic en el botn
Refine Query. En la pgina Refine Query for Table, puede seleccionar las columnas
que desea
ver y especificar una clusula WHERE para la sentencia SQL con el fin de limitar l
os resultados.
Para obtener ms informacin sobre las clusulas WHERE de las sentencias SQL, consulte
Oracle
Database SQL Reference.
Base de Datos Oracle 11g: Taller de Administracin I 7-22
Acciones con Tablas
Copyright 2013, Oracle. Todos los derechos reservados.
Acciones con Tablas
Puede seleccionar una tabla y, a continuacin, realizar acciones en ella. Aqu se pr
esentan
algunas de esas acciones:

Create Like: Con esta accin puede crear una tabla que tenga la misma estructura q
ue la
seleccionada. Deber cambiar los nombres de las restricciones. Puede agregar o sup
rimir
columnas y realizar otros cambios en la estructura de la tabla antes de crearla.
Create Index: Utilice esta opcin para crear ndices de una tabla.
Generate DDL: Se genera el DDL que representa la tabla que ya existe. A continua
cin se
puede copiar en un archivo de texto para su uso como archivo de comandos o con f
ines de
documentacin.
Grant Privileges: Por defecto, cuando se crea una tabla, slo el propietario puede
realizar
acciones en ella. El propietario debe otorgar privilegios a los dems usuarios par
a que
puedan ejecutar DML o DDL en la tabla.
Show Dependencies: Muestra objetos de los que depende esta tabla u objetos que
dependen de esta tabla.
View Data: Selecciona y muestra datos de la tabla en modo de slo lectura.
Base de Datos Oracle 11g: Taller de Administracin I 7-23
Borrado de una Tabla
El borrado de una tabla elimina:

Datos
DROP TABLE hr.employees PURGE;

Estructura de tabla
Disparadores de base de datos
ndices correspondientes
Privilegios de objeto asociados
Clusulas opcionales de la sentencia DROP TABLE:

CASCADE CONSTRAINTS: Restricciones de


integridad referencial dependientes
PURGE: No es posible el flashback
Copyright 2013, Oracle. Todos los derechos reservados.
Borrado de una Tabla
Sintaxis:
DROP TABLE [schema.] table [CASCADE CONSTRAINTS] [PURGE]
El comando DROP TABLE elimina los datos, la estructura de la tabla y los privile
gios de objeto
asociados. Algunos aspectos acerca de DROP TABLE que se deben tener en cuenta so
n:
Sin la clusula PURGE, la definicin de tabla, los ndices asociados y los disparadore
s se
colocan en una papelera de reciclaje. Los datos de la tabla permanecen, pero no
resultan
accesibles sin la definicin de tabla. Si borra una tabla a travs de Enterprise Man
ager, la
clusula PURGE no se utiliza.
Utilice el comando FLASHBACK TABLE para recuperar objetos de esquema de la papel
era
de reciclaje. El comando PURGE RECYCLEBIN vaca la papelera de reciclaje.
La opcin CASCADE CONSTRAINTS es necesaria para suprimir todas las restricciones d
e
integridad referencial dependientes.
Nota: Si no utiliza la opcin PURGE, el espacio que ocupa la tabla y sus ndices sig
ue contando
en la cuota permitida del usuario para los tablespaces implicados. Es decir, tod
ava se considera
que ese espacio se est utilizando.
Base de Datos Oracle 11g: Taller de Administracin I 7-24
Truncamiento de una Tabla
TRUNCATE TABLE hr.employees;

El truncamiento de una tabla hace que sus datos


de fila dejen de estar disponibles y,
opcionalmente, libera el espacio utilizado.
Los ndices correspondientes se truncan.
Copyright 2013, Oracle. Todos los derechos reservados.
Truncamiento de una Tabla
Sintaxis:
TRUNCATE TABLE [schema.] table [{DROP | REUSE} STORAGE]
Los efectos de utilizar este comando son los siguientes:
La tabla se marca como vaca definiendo el lmite superior al principio de la tabla,
con lo
que sus filas dejan de estar disponibles.
No se generan datos de deshacer y el comando se confirma implcitamente porque
TRUNCATE TABLE es un comando DDL.
Los ndices correspondientes tambin se truncan.
No se pueden truncar las tablas a las que una clave ajena hace referencia.
Los disparadores de supresin no se activan cuando se utiliza este comando.
Normalmente esto es mucho ms rpido que emitir una sentencia DELETE para suprimir t
odas
las filas de la tabla debido a los siguientes motivos:
La base de datos Oracle restablece el lmite superior de la tabla en lugar de proc
esar cada
fila como una operacin DELETE.
No se genera ningn dato de deshacer.
Base de Datos Oracle 11g: Taller de Administracin I 7-25
22
22
ndices
Esquema
Restricciones
> ndices
Vistas
Secuencias
Tablas Temporales
Diccionario de Datos
WHERE key = 22
Puntero
Clave de fila
ndice
Tabla
Copyright 2013, Oracle. Todos los derechos reservados.
ndices
Los ndices son estructuras opcionales asociadas a las tablas. Se pueden crear par
a mejorar el
rendimiento de la recuperacin y actualizacin de los datos. Un ndice de Oracle propo
rciona
una ruta de acceso directo a una fila de datos.
Los ndices se pueden crear en una o ms columnas de una tabla. Una vez creado un ndi
ce,
el servidor de Oracle lo mantiene y utiliza automticamente. Las actualizaciones d
e datos de una
tabla, como la adicin de nuevas filas, la actualizacin de filas o la supresin de fi
las, se
propagan automticamente a todos los ndices relevantes con completa transparencia p
ara los
usuarios.
Base de Datos Oracle 11g: Taller de Administracin I 7-26
Tipos de ndices
Existen varios tipos de estructuras de ndices
disponibles, segn las necesidades:

Los ndices de rbol B tienen la forma de un rbol


binario y son el tipo por defecto.
Los ndices de bitmap tienen un bitmap para cada
uno de los distintos valores indexados, y cada
posicin de bit representa una fila que puede o no
contener dichos valores. Es adecuado para
columnas de baja cardinalidad.
Copyright 2013, Oracle. Todos los derechos reservados.
Tipos de ndices
stos son los tipos de ndices ms comunes:
rbol B
Bitmap
Un ndice de rbol B tiene almacenados sus valores clave en un rbol equilibrado, lo q
ue permite
bsquedas binarias rpidas.
Un ndice de bitmap tiene un bipmap para cada valor clave distinto indexado. En ca
da bitmap,
hay un juego de bits contiguos para cada fila de la tabla indexada. Esto permite
bsquedas
rpidas cuando hay pocos valores distintos, es decir, la columna indexada tiene ba
ja
cardinalidad. Un ejemplo sera un indicador de gnero. Slo puede tener los valores de
M y
F . De modo que solo se pueden buscar dos bitmaps. Por ejemplo, si se utilizara un n
dice de
bitmap para una columna phone_number, habra que gestionar tantos bitmaps que la
bsqueda resultara muy poco eficaz. Utilice ndices de bitmap en columnas de baja
cardinalidad.
Base de Datos Oracle 11g: Taller de Administracin I 7-27
ndice de rbol B
Entrada de ndice
Raz
Rama
Cabecera de entrada de ndice
Hoja
Longitud de columna clave
Valor de columna clave
ROWID
Copyright 2013, Oracle. Todos los derechos reservados.
ndice de rbol B
Estructura de un ndice de rbol B
Al principio del ndice est la raz, que contiene entradas que apuntan al siguiente n
ivel del
ndice. En el siguiente nivel estn los bloques rama, que su vez apuntan a los bloqu
es del
siguiente nivel del ndice. En el nivel inferior estn los nodos hoja, que contienen
las entradas de
ndice que apuntan a las filas de la tabla. Los bloques hoja estn enlazados dobleme
nte para
facilitar la bsqueda de los valores clave del ndice en orden ascendente y descende
nte.
Formato de las entradas de hojas del ndice
Una entrada de ndice est formada por los siguientes componentes:
Una cabecera de entrada, que almacena el nmero de columnas y la informacin de
bloqueo
Pares longitud-valor de columna clave, que definen el tamao de una columna en la
clave
seguida por el valor de la columna (el nmero de estos pares es el nmero mximo de
columnas del ndice)
ROWID de una fila que contiene los valores clave
Base de Datos Oracle 11g: Taller de Administracin I 7-28
ndice de rbol B (continuacin)
Caractersticas de las entradas de hojas del ndice
En un ndice de rbol B de una tabla no particionada:
Si hay varias filas con la misma clave los valores clave se repiten a no ser que
el ndice est
comprimido.
No existen entradas de ndice correspondientes a una fila cuyas columnas de clave
tengan
todas el valor NULL. Por lo tanto, una clusula WHERE que especifique NULL siempre
dar
lugar a una exploracin de tabla completa.
El ROWID restringido se utiliza para apuntar a las filas de la tabla, dado que t
odas las filas
pertenecen al mismo segmento.
Efecto de las operaciones DML en ndices
El servidor de Oracle mantiene todos los ndices cuando las operaciones DML se rea
lizan en la
tabla. A continuacin se muestra una explicacin del efecto de un comando DML en un n
dice:
Las operaciones de insercin dan como resultado la insercin de una entrada de ndice
en el
bloque adecuado.
La supresin de una fila produce una supresin lgica de la entrada de ndice. El espaci
o
que utiliza la fila suprimida no estar disponible para las nuevas entradas hasta
que todas
las entradas del bloque se supriman.
Las actualizaciones de las columnas clave dan como resultado una supresin lgica y
una
insercin en el ndice. El valor PCTFREE no tiene efecto alguno en el ndice excepto e
n el
momento de la creacin. Se puede agregar una nueva entrada en el bloque de ndice in
cluso
si cuenta con menos espacio que el especificado en PCTFREE.
Base de Datos Oracle 11g: Taller de Administracin I 7-29
ndices de Bitmap
ndice
Tabla
ROWID ROWID
Clave inicial final
Archivo 3
Bloque 10
Bloque 11
Bloque 12
Bitmap
<Blue,
<Green,
<Red,
<Yellow,
10.0.3,
10.0.3,
10.0.3,
10.0.3,
12.8.3,
12.8.3,
12.8.3,
12.8.3,
1000100100010010100>
0001010000100100000>
0100000011000001001>
0010001000001000010>
Copyright 2013, Oracle. Todos los derechos reservados.
ndices de Bitmap
Los ndices de bitmap ofrecen ms ventajas que los ndices de rbol B en determinadas
situaciones:
Cuando una tabla tiene millones de filas y las columnas de clave poseen baja car
dinalidad,
es decir, tienen pocos valores distintos. Por ejemplo, los ndices de bitmap puede
n ser
preferibles a los de rbol B para las columnas de gnero y estado marital de una tab
la que
contenga registros de pasaporte.
Cuando es frecuente que las consultas utilicen una combinacin de varias condicion
es
WHERE relacionadas con el operador OR.
Cuando hay actividad de slo lectura o de actualizacin baja en las columnas de clav
e.
Estructura de un ndice de bitmap
El ndice de bitmap tambin est organizado como un rbol B, pero el nodo hoja almacena
un
bitmap para cada valor clave en lugar de una lista de ROWID. Cada bit del bitmap
corresponde a
un posible ROWID, y si este bit est definido, significa que la fila con el ROWID
correspondiente
contiene el valor clave.
Como se muestra en el diagrama, el nodo hoja de un ndice de bitmap contiene lo si
guiente:
Una cabecera de entrada, que contiene el nmero de columnas y la informacin de
bloqueo.
Base de Datos Oracle 11g: Taller de Administracin I 7-30
ndices de Bitmap (continuacin)
Estructura de un ndice de bitmap (continuacin)
Los valores clave constan de pares de longitud y valor para cada columna de clav
e. En el
ejemplo, la clave est formada por una columna, y la primera entrada tiene un valo
r clave
de Blue.
ROWID inicial, que en el ejemplo especifica el nmero de bloque diez, el nmero de f
ila
cero y el nmero de archivo tres.
ROWID final, que en el ejemplo especifica el nmero de bloque doce, el nmero de fil
a
ocho y el nmero de archivo tres.
Un segmento de bitmap consta de una cadena de bits. (El bit se define cuando la
fila
correspondiente contiene el valor clave y se anula su definicin cuando no lo cont
iene. El
servidor de Oracle usa una tcnica de compresin patentada para almacenar segmentos
de
bitmap.)
El ROWID inicial es el ROWID de la primera fila a la que apunta el segmento de b
itmap del
bitmap, es decir, el primer bit del bitmap corresponde a ese ROWID, el segundo a
la siguiente fila
del bloque y el ROWID final es un puntero a la ltima fila de la tabla incluida en
el segmento de
bitmap. Los ndices de bitmap son ROWID restringidos.
Uso de un ndice de bitmap
El rbol B se utiliza para localizar los nodos hoja que contienen segmentos de bit
map para un
valor dado de la clave. El ROWID inicial y los segmentos de bitmap se utilizan p
ara localizar las
filas que contienen el valor clave.
Cuando se realizan cambios en la columna de clave de la tabla, se deben modifica
r los bitmaps.
El resultado es que se bloquean los segmentos de bitmap relevantes. Como los blo
queos se
adquieren en todo el segmento de bitmap, otras transacciones no pueden actualiza
r una fila
incluida en el bitmap hasta que termine la primera transaccin.
Base de Datos Oracle 11g: Taller de Administracin I 7-31
Opciones de ndice

Un ndice nico garantiza que todo valor indexado


es nico.
Un ndice puede tener almacenados sus valores
clave en orden ascendente o descendente.
Un ndice de clave inversa tiene almacenados sus
bytes de valores clave en orden inverso.
Un ndice compuesto es aquel basado en ms de
una columna.
Un ndice basado en funciones es un ndice
basado en el valor de retorno de una funcin.
Un ndice comprimido es aquel del que se han
eliminado valores clave repetidos.
Copyright 2013, Oracle. Todos los derechos reservados.
Opciones de ndice
Para facilitar la recuperacin, puede resultar ventajoso contar con un ndice que al
macene las
claves en orden descendente. Esta decisin se debe tomar en funcin de cmo se acceda
a los
datos normalmente.
Un ndice de clave inversa tiene almacenados los bytes del valor indexado en orden
inverso.
Esto puede reducir la actividad en un punto conflictivo determinado del ndice. Si
muchos
usuarios estn procesando datos en el mismo orden, las partes de prefijo de los va
lores clave
(actualmente procesndose) se aproximan en un momento dado. Como consecuencia, hay
mucha
actividad en esa rea de la estructura del ndice. Los ndices de clave inversa repart
en esa
actividad entre la estructura del ndice indexando una versin de byte inverso de lo
s valores
clave.
Los ndices creados por la combinacin de ms de una columna se denominan ndices
compuestos. Por ejemplo, puede crear un ndice basado en el apellido y nombre de u
na persona:
CREATE INDEX name_ix ON employees
(last_name, first_name);
Base de Datos Oracle 11g: Taller de Administracin I 7-32
Opciones de ndice (continuacin)
Los ndices basados en funciones indexan el valor de retorno de una funcin. Esta fu
ncin
puede ser una funcin SQL incorporada, una funcin PL/SQL proporcionada o una funcin
escrita por el usuario. De esta manera, el servidor deja de tener que llamar a l
a funcin por
cada valor clave dado que se realiza una bsqueda en la expresin indexada. En el si
guiente
ejemplo se indexa el volumen del rbol devuelto que calcula la funcin, segn la espec
ie,
altura y volumen (que son columnas de la tabla TREES):
CREATE INDEX tree_vol_ix ON
TREES(volume(species,height,circumference));
Luego, toda consulta que contenga la expresin
volume(species,height,circumference) en la clusula WHERE podra
aprovechar las ventajas de este ndice y ejecutarse de manera mucho ms rpida porque
el
clculo del volumen ya se ha realizado para cada rbol. Los ndices basados en funcion
es se
mantienen automticamente, igual que los ndices normales.
Puede utilizar un ndice comprimido para reducir el consumo de disco en tiempo de
ejecucin.
Como se eliminan los valores clave repetidos, pueden caber ms entradas de ndice en
una
cantidad dada de espacio en disco y, como consecuencia, se pueden leer ms entrada
s en el
disco en la misma cantidad de tiempo. La compresin y la descompresin se deben real
izar,
respectivamente, para la escritura y la lectura del ndice.
Base de Datos Oracle 11g: Taller de Administracin I 7-33
Creacin de ndices
CREATE INDEX my_index ON
employees(last_name, first_name);
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de ndices
Puede hacer clic en el enlace Indexes situado bajo la cabecera Schema de la pgina
Administration para ver la pgina Indexes. Puede ver atributos de ndice o utilizar
el men
Actions para ver dependencias de un ndice.
Los ndices se pueden crear explcita o implcitamente mediante restricciones que se c
olocan en
una tabla. Un ejemplo de un ndice creado implcitamente es la definicin de una clave
primaria,
en cuyo caso se creara automticamente un ndice nico para reforzar la unicidad en la
columna.
Base de Datos Oracle 11g: Taller de Administracin I 7-34
Qu es una Vista?
Esquema
Restricciones
ndices
> Vistas
Tabla LOCATION
Tabla COUNTRY
Vista
CREATE VIEW v AS SELECT location_id, country_name FROM
locations l, countries c
WHERE l.country_id = c.country_id AND c.country_id in
('AU','BR');
Copyright 2013, Oracle. Todos los derechos reservados.
Qu es una Vista?
Las vistas son representaciones personalizadas de datos de una o ms tablas u otra
s vistas.
Se pueden considerar como consultas almacenadas dado que pueden ocultar condicio
nes muy
complejas, uniones y otras expresiones y construcciones SQL complejas. Las vista
s en realidad
no contienen datos, sino que derivan sus datos de las tablas en las que se basan
. Estas tablas se
denominan tablas base de la vista.
Base de Datos Oracle 11g: Taller de Administracin I 7-35
Creacin de Vistas
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de Vistas
Al igual que con las tablas, se pueden realizar consultas, actualizaciones, inse
rciones y
supresiones en las vistas, pero con algunas restricciones. Todas las operaciones
realizadas en una
vista en realidad afectan a las tablas base de la vista. Las vistas proporcionan
un nivel adicional
de seguridad al restringir el acceso a un juego predeterminado de filas y column
as de una tabla.
Tambin pueden ocultar la complejidad de los datos y almacenar consultas complejas
.
Para ver las vistas definidas en la base de datos, haga clic en el enlace Views
situado bajo la
cabecera Schema de la pgina Administration.
Base de Datos Oracle 11g: Taller de Administracin I 7-36
Secuencias
Una secuencia es un mecanismo para
generar automticamente enteros que
siguen un patrn.
Esquema
Restricciones
ndices
Vistas
> Secuencias
Tablas Temporales
Diccionario de Datos

Una secuencia tiene un nombre, que es


la forma en que se hace referencia a ella
cuando se solicita el siguiente valor.
1
2
3
4
5

Una secuencia no est asociada a ninguna


tabla o columna en especial.
La progresin puede ser ascendente o descendente.
El intervalo entre nmeros puede ser de cualquier
tamao.
Una secuencia puede crear un ciclo cuando se
alcanza un lmite.
Copyright 2013, Oracle. Todos los derechos reservados.
Secuencias
Para recuperar el siguiente valor de una secuencia, se hace referencia a ella po
r su nombre;
no existe asociacin alguna de una secuencia con una tabla o columna.
Una vez emitido un nmero determinado, no se volver a emitir, a menos que la secuen
cia
se defina como cclica. En ocasiones, una aplicacin solicita que un valor no deje n
unca de
utilizarse o de almacenarse en la base de datos. Esto puede dar lugar a interval
os vacos en
los nmeros que residen en la tabla en la que se estn almacenando.
El almacenamiento en cach de los nmeros de secuencia mejora el rendimiento ya que
se asigna
previamente un juego de nmeros en la memoria para un acceso ms rpido. En caso de fa
llo de
la instancia, los nmeros de secuencia almacenados en cach no se utilizan, lo que d
a lugar a
intervalos vacos.
Nota: Si una aplicacin necesita que no haya intervalos vacos, la aplicacin debe imp
lementar
un generador de nmeros personalizados. No obstante, este mtodo puede producir un
rendimiento muy deficiente. Si utiliza una tabla para almacenar un valor, y ese
valor lo
incrementa y actualiza la tabla para cada solicitud, ese proceso supondra un cuel
lo de botella
en todo el sistema. ste es el motivo por el que cada sesin tendra que esperar ese m
ecanismo,
el cual, para garantizar que no haya duplicados ni intervalos vacos, slo gestiona
una solicitud
a la vez.
Base de Datos Oracle 11g: Taller de Administracin I 7-37
Creacin de una Secuencia
Copyright 2013, Oracle. Todos los derechos reservados.
Creacin de una Secuencia
Puede ver y crear secuencias con Enterprise Manager haciendo clic en el enlace S
equences
situado bajo la cabecera Schema de la pgina Administration. ste es un resumen de l
as opciones
de creacin de secuencias:

Name: Es el nombre de la secuencia, con el que se hace referencia a ella.


Schema: Es el propietario de la secuencia.
Maximum Value: Especifique el valor mximo que puede generar la secuencia. Este va
lor
entero puede tener 28 dgitos o menos. Debe ser mayor que el valor de Minimum Valu
e y
de Initial. Unlimited indica un valor mximo de 1027 para una secuencia ascendente
, o de
-1 para una secuencia descendente. El valor por defecto es Unlimited.
Minimum Value: Especifique el valor mnimo de la secuencia. Este valor entero pued
e
tener 28 dgitos o menos. Debe ser menor o igual que el valor de Initial y menor q
ue
Maximum Value. Unlimited indica un valor mnimo de 1 para una secuencia ascendente
,
o de -1026 para una secuencia descendente. El valor por defecto es Unlimited.
Base de Datos Oracle 11g: Taller de Administracin I 7-38
Creacin de una Secuencia (continuacin)

Interval: Especifique el intervalo entre nmeros de secuencia. Este valor entero p


uede ser
cualquier entero positivo o negativo, pero no puede ser cero. Puede tener 28 dgit
os o
menos. El valor por defecto es uno.
Initial: Especifique el primer nmero de secuencia que se va a generar. Utilice es
ta
clusula para iniciar una secuencia ascendente en un valor mayor que su mnimo o par
a
iniciar una secuencia descendente en un valor menor que su mximo.
Cycle Values: Despus de que una secuencia ascendente alcance su valor mximo, gener
a
su valor mnimo. Despus de que una secuencia descendente alcance su mnimo, genera su
valor mximo. Si no selecciona esta opcin, se devolver un error si intenta recuperar
un
valor despus de que la secuencia se haya agotado.
Order Values: Garantiza que los nmeros de secuencia se generan en orden de solici
tud.
Esta clusula es til si utiliza nmeros de secuencia como registros de hora. Garantiz
ar el
orden no suele ser importante con las secuencias utilizadas para generar claves
primarias.
Esta opcin es necesaria slo para garantizar la generacin ordenada si utiliza la bas
e de
datos Oracle con Real Application Clusters.
Cache Options: Especifique cuntos valores de la secuencia preasigna y mantiene la
base
de datos Oracle en la memoria para un acceso ms rpido. Este valor entero puede ten
er
28 dgitos o menos. El valor mnimo para este parmetro es 2. Para secuencias en ciclo
s,
este valor debe ser inferior al nmero de valores del ciclo. No puede almacenar en
cach
ms valores de los que se ajustarn en un ciclo determinado de nmeros de secuencia.
Base de Datos Oracle 11g: Taller de Administracin I 7-39
Uso de una Secuencia
Copyright 2013, Oracle. Todos los derechos reservados.
Uso de una Secuencia
Haga referencia a valores de secuencia en sentencias SQL con las siguientes pseu
docolumnas:
CURRVAL: Devuelve el valor actual de una secuencia
NEXTVAL: Incrementa la secuencia y devuelve el siguiente valor
Debe cualificar a CURRVAL y NEXTVAL con el nombre de la secuencia:
sequence.CURRVAL
sequence.NEXTVAL
La primera referencia a NEXTVAL devuelve el valor inicial de la secuencia. Las r
eferencias
posteriores a NEXTVAL aumentan el valor de secuencia con el incremento definido
y devuelven
el nuevo valor. Cualquier referencia a CURRVAL siempre devuelve el valor actual
de la
secuencia, que es el valor devuelto por la ltima referencia a NEXTVAL.
Base de Datos Oracle 11g: Taller de Administracin I 7-40
Tablas Temporales
Una tabla temporal:
Esquema
Restricciones
ndices
Vistas
Secuencias
> Tablas Temporales
Diccionario de Datos

Proporciona almacenamiento de datos que se


limpian automticamente al terminar la sesin o
transaccin
Proporciona almacenamiento privado de datos en
cada sesin
Se puede utilizar en todas las sesiones sin que
afecte a los datos privados de las dems
Copyright 2013, Oracle. Todos los derechos reservados.
Tablas Temporales
Puede aprovechar las tablas temporales cuando necesite almacenar datos de forma
privada con el
fin de realizar una tarea y desee que los datos se limpien una vez terminada sta,
al final de una
transaccin o sesin. Las tablas temporales ofrecen esta funcionalidad pero adems le
liberan de
las responsabilidades de ocultar los datos de otras sesiones y eliminan los dato
s generados
cuando ha terminado. Los nicos datos de la tabla temporal visibles para una sesin
son los datos
que ha insertado la sesin.
Una tabla temporal puede ser especfica de una transaccin o de una sesin. En el caso
de las
tablas temporales especficas de una transaccin, los datos se conservan lo que dura
la
transaccin, y en el segundo caso lo que dura la sesin. En ambos casos, los datos q
ue inserta
una sesin son privados para la sesin. Cada sesin slo puede ver y modificar sus propi
os datos.
Como resultado, nunca se adquieren bloqueos DML en los datos de las tablas tempo
rales. Las
siguientes clusulas controlan la duracin de las filas:
ON COMMIT DELETE ROWS: Para especificar que la duracin de las filas insertadas
equivale a lo que dura la transaccin.
ON COMMIT PRESERVE ROWS: Para especificar que la duracin de las filas insertadas
equivale a lo que dura la sesin.
Base de Datos Oracle 11g: Taller de Administracin I 7-41
Tablas Temporales (continuacin)
La sentencia CREATE GLOBAL TEMPORARY TABLE crea una tabla temporal. Puede crear
ndices, vistas y disparadores en tablas temporales, y tambin puede utilizar Export
e Import o
Data Pump para exportar e importar la definicin de una tabla temporal. No obstant
e, no se
exportar ningn dato aunque utilice la opcin ROWS.
Adems de los casos ya mencionados que provocan la supresin de los datos, puede for
zar la
eliminacin de stos de manera eficaz con el comando TRUNCATE TABLE. Este comando
elimina todos los datos insertados, y resulta ms eficaz que utilizar el comando D
ELETE.
Puede crear ndices, vistas y disparadores en tablas temporales.
Las tablas temporales se pueden crear mediante Enterprise Manager haciendo clic
en la opcin
Temporary en la pgina Create Table: Table Organization. Haga clic en Continue. La
siguiente
pgina le permite especificar si la tabla temporal es especfica de la sesin o de la
transaccin. El
campo Tablespace est desactivado dado que una tabla temporal siempre se crea en e
l tablespace
temporal del usuario; no se puede especificar ningn otro tablespace.
Nota: La palabra clave GLOBAL se basa en la terminologa especificada en el estndar
ISO
(Organizacin Internacional de Normalizacin) para SQL.
Base de Datos Oracle 11g: Taller de Administracin I 7-42
Tablas Temporales: Consideraciones

Utilice la clusula GLOBAL TEMPORARY para crear


tablas temporales:
CREATE GLOBAL TEMPORARY TABLE employees_temp
ON COMMIT PRESERVE ROWS
AS SELECT * FROM employees;
Utilice el comando TRUNCATE TABLE para suprimir
el contenido de la tabla.
Puede crear los siguientes elementos en tablas
temporales:
ndices
Vistas
Disparadores
Copyright 2013, Oracle. Todos los derechos reservados.
Tablas Temporales: Consideraciones
La sentencia CREATE GLOBAL TEMPORARY TABLE crea una tabla temporal. Puede crear
ndices, vistas y disparadores en tablas temporales, y tambin puede utilizar Export
e Import o
Data Pump para exportar e importar la definicin de una tabla temporal. No obstant
e, no se
exportar ningn dato aunque utilice la opcin ROWS.
Adems de los casos ya mencionados que provocan la supresin de los datos, puede for
zar la
eliminacin de stos de manera eficaz con el comando TRUNCATE TABLE. Este comando
elimina todos los datos insertados, y resulta ms eficaz que utilizar el comando D
ELETE.
Nota: La palabra clave GLOBAL se basa en la terminologa especificada en el estndar
ISO
(Organizacin Internacional de Normalizacin) para SQL.
Base de Datos Oracle 11g: Taller de Administracin I 7-43
Diccionario de Datos:
Visin General
Esquema
Restricciones
ndices
Vistas
Secuencias
Tablas Temporales
> Diccionario de Datos
Tablas
ndices
Vistas
Usuarios
Esquemas
Procedimientos
etc.
SELECT * FROM dictionary;
Copyright 2013, Oracle. Todos los derechos reservados.
Diccionario de Datos: Visin General
El diccionario de datos de Oracle es la descripcin de una base de datos. Contiene
los nombres
y atributos de todos los objetos de la base de datos. La creacin o modificacin de
un objeto
provoca la actualizacin del diccionario de datos para reflejar dichos cambios. Es
ta informacin
se almacena en las tablas base mantenidas por la base de datos Oracle, pero pued
e acceder a
estas tablas mediante vistas predefinidas en lugar de leer las tablas directamen
te.
El diccionario de datos:
Lo utiliza el servidor de base de datos Oracle para encontrar informacin acerca d
e
usuarios, objetos, restricciones y almacenamiento
Lo mantiene el servidor de base de datos Oracle a medida que las estructuras o d
efiniciones
de objetos se modifican
Lo puede utilizar cualquier usuario para consultar informacin acerca de la base d
e datos
Es propiedad del usuario SYS
No se debe modificar directamente mediante SQL
Nota: La vista del diccionario de datos DICTIONARY, o su sinnimo DICT, contiene l
os
nombres y las descripciones de todo lo que hay en el diccionario de datos. Utili
ce la vista
DICT_COLUMNS para ver las columnas de vista y sus definiciones. Para obtener def
iniciones
completas de cada vista, consulte la documentacin Oracle Database Reference.
Base de Datos Oracle 11g: Taller de Administracin I 7-44
Quin Puede Consultar Contenido Subjuego de Notas DBA_ DBA Todo N/A Podra tener col
umnas adicionales diseadas nicamente para el uso de DBA ALL_ Todos Todo para lo qu
e el usuario tiene privilegios de visualizacin Vistas DBA_ Todo lo que el usuario
posee USER_ Todos Incluye los propios objetos del usuario Vistas ALL_ Normalmen
te es igual que ALL_ excepto por la columna OWNER que falta. Algunas vistas tien
en nombres abreviados como sinnimos PUBLIC.
Vistas del Diccionario de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Vistas del Diccionario de Datos
Los prefijos de la vista indican qu o cuntos datos puede ver un usuario determinad
o. A la vista
global de todo slo acceden los usuarios con privilegios DBA, mediante el prefijo
DBA_. El
siguiente nivel de privilegios est en el nivel de prefijo ALL_, que representa to
dos los objetos
para los que el usuario que consulta tiene privilegios de vista, tanto si es o n
o su propietario.
Por ejemplo, si USER_A tiene permiso para acceder a una tabla propiedad de USER_
B, USER_A
ve esa tabla en todas las vistas ALL_ relacionadas con nombres de tabla. El pref
ijo USER_
representa el mbito de visibilidad ms pequeo. Slo se muestran aquellos objetos cuyo
propietario es el usuario que consulta, es decir, los que estn presentes en su pr
opio esquema.
Base de Datos Oracle 11g: Taller de Administracin I 7-45
Vistas del Diccionario de Datos (continuacin)
Por lo general, cada juego de vistas es un subjuego del juego de vistas con los
privilegios ms
altos, que tiene en cuenta las filas y columnas. No todas las vistas de un juego
de vistas dado
tienen una vista correspondiente en los dems juegos de vistas. Depende de la natu
raleza de
la informacin de la vista. Por ejemplo, existe una vista DBA_LOCK, pero no una vi
sta
ALL_LOCK. Esto se debe a que slo un DBA tendra inters en los datos sobre bloqueos.
Se
debe asegurar de elegir el juego de vistas adecuado a sus necesidades. Si tiene
privilegios para
acceder a las vistas DBA, es posible que an desee consultar slo la versin USER de l
a vista
porque sabe que es algo que tiene y no desea que otros objetos se agreguen a su
juego de
resultados.
Las vistas DBA_ pueden ser consultadas por los usuarios con el privilegio SYSDBA
o
SELECT ANY DICTIONARY.
Base de Datos Oracle 11g: Taller de Administracin I 7-46
Diccionario de Datos: Ejemplos de Uso
a
b
c
d
SELECT table_name, tablespace_name FROM
user_tables;
SELECT sequence_name, min_value, max_value,
increment_by FROM all_sequences WHERE
sequence_owner IN ('MDSYS','XDB');
SELECT USERNAME, ACCOUNT_STATUS FROM
dba_users WHERE ACCOUNT_STATUS = 'OPEN';
DESCRIBE dba_indexes;
Copyright 2013, Oracle. Todos los derechos reservados.
Diccionario de Datos Esttico: Ejemplos de Uso
En los ejemplos de la diapositiva se muestran consultas que responden a estas pr
eguntas:
a. Cules son los nombres de las tablas (junto con el nombre del tablespace donde r
esiden)
que se han creado en el esquema?
b. Cul es la informacin importante acerca de las secuencias de la base de datos a l
a que ha
accedido?
c. Qu usuarios de esta base de datos se pueden conectar actualmente?
d. Cules son las columnas de la vista DBA_INDEXES? Esto le muestra la informacin qu
e
puede ver acerca de todos los ndices de la base de datos. A continuacin se muestra
una
salida parcial de este comando:
SQL> DESCRIBE dba_indexes;
Name Null? Type
--------------- -------- -------------
OWNER NOT NULL VARCHAR2(30)
INDEX_NAME NOT NULL VARCHAR2(30)
INDEX_TYPE VARCHAR2(27)
TABLE_OWNER NOT NULL VARCHAR2(30)
TABLE_NAME NOT NULL VARCHAR2(30)
Base de Datos Oracle 11g: Taller de Administracin I 7-47
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Definir objetos de esquema y tipos de dato


Crear y modificar tablas
Definir restricciones
Visualizar las columnas y el contenido de una tabla
Crear ndices
Crear vistas
Crear secuencias
Explicar el uso de tablas temporales
Usar el diccionario de datos
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 7-48
Visin General de la Prctica:
Administracin de Objetos de Esquema
En esta prctica se abordan los siguientes temas:

Creacin de tablas con columnas


Creacin de restricciones:
Clave primaria
Clave ajena
Restriccin de control
Creacin de ndices
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 7-49
Gestin de Datos y Simultaneidad
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para
lo siguiente:

Gestionar datos mediante el uso de SQL


Identificar y administrar objetos PL/SQL
Describir los disparadores y los eventos
disparadores
Controlar y resolver conflictos de bloqueo
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 8-2
PL/SQL
Manipulacin de Datos mediante SQL
> SQL
.
Bloqueos
SQL> INSERT INTO employees VALUES
2 (9999,'Bob','Builder','bob@abc.net',NULL,SYSDATE,
3 'IT_PROG',NULL,NULL,100,90);
1 row created.
SQL> UPDATE employees SET SALARY=6000
2 WHERE EMPLOYEE_ID = 9999;
1 row updated.
SQL> DELETE from employees
2 WHERE EMPLOYEE_ID = 9999;
1 row deleted.
Copyright 2013, Oracle. Todos los derechos reservados.
Manipulacin de Datos mediante SQL
Las sentencias bsicas del lenguaje de manipulacin de datos (DML) son el modo en qu
e se
manipulan los datos en la base de datos. Aunque estas sentencias se mencionaron
brevemente en
la leccin con el ttulo Movimiento de Datos , se tratarn ms detalladamente en esta lecc
.
Base de Datos Oracle 11g: Taller de Administracin I 8-3
Comando INSERT


Crear filas de una en una.
Insertar varias filas de otra tabla.
Copyright 2013, Oracle. Todos los derechos reservados.
Comando INSERT
La sentencia bsica INSERT crea filas de una en una. Mediante lo que se denomina
subseleccin, puede hacer que el comando INSERT copie filas de una tabla a otra. E
ste mtodo
tambin se denomina sentencia INSERT SELECT. El ejemplo de la diapositiva es el si
guiente
comando INSERT:
insert into dept_80 (select * from employees
where department_id = 80);
En este caso la tabla dept_80 tiene exactamente la misma estructura que la tabla
employees.
Si este no es el caso, puede nombrar las columnas de cada tabla. Los valores sel
eccionados en la
sentencia SELECT se asocian a las columnas de la tabla en la que se insertan, re
spectivamente.
Los valores de columna coinciden en el orden especificado en las sentencias INSE
RT y
SELECT. Todo lo que se necesita es que los tipos de dato coincidan. Por ejemplo:
insert into just_names (first, last)
(select first_name, last_name from employees);
Aqu, la tabla just_names slo tiene dos columnas que tienen el mismo tipo de dato q
ue las
columnas first_name y last_name de la tabla employees.
El uso del mtodo INSERT SELECT es un modo de cargar datos en bloque de una o ms ta
blas
en otra tabla.
Base de Datos Oracle 11g: Taller de Administracin I 8-4
Comando UPDATE
Utilice el comando UPDATE para cambiar cero o ms
filas de una tabla.
Copyright 2013, Oracle. Todos los derechos reservados.
Comando UPDATE
El comando UPDATE se utiliza para modificar filas existentes de una tabla. El nme
ro de filas
modificadas por el comando UPDATE depende de la condicin WHERE. Si se omite la clu
sula
WHERE, se cambian todas las filas. Si ninguna fila cumple la condicin WHERE, no s
e realizarn
modificaciones.
Base de Datos Oracle 11g: Taller de Administracin I 8-5
Comando DELETE
Utilice el comando DELETE para eliminar cero o ms
filas de una tabla.
Copyright 2013, Oracle. Todos los derechos reservados.
Comando DELETE
El comando DELETE se utiliza para eliminar filas existentes de una tabla. El nmer
o de filas
modificadas por el comando DELETE depende de la condicin WHERE. Si se omite la clu
sula
WHERE, se eliminan todas las filas. Si ninguna fila cumple la condicin WHERE, no
se eliminar
ninguna fila. Tenga en cuenta en el ejemplo que cuando no se suprime ninguna fil
a, no es un
error; el mensaje devuelto slo indica que se han eliminado cero filas de la tabla
.
Base de Datos Oracle 11g: Taller de Administracin I 8-6
Comando MERGE
Utilice el comando MERGE para realizar las acciones de
INSERT y UPDATE con un nico comando.
Copyright 2013, Oracle. Todos los derechos reservados.
Comando MERGE
El comando MERGE realiza las acciones de UPDATE e INSERT en el mismo comando. Pu
ede
fusionar datos de un origen de datos con otro, insertar de manera opcional filas
nuevas y
actualizar columnas especficas si ya existe una fila.
Considere este ejemplo: Algunos datos de la tabla JOBS tienen el siguiente aspec
to:
JOB_ID
----------
AD_PRES
FI_ACCOUNT
ST_CLERK
IT_PROG
JOB_TITLE MIN_SALARY MAX_SALARY
-------------- ---------- ----------
President 20000 40000
Accountant 4200 9000
Stock Clerk 2000 5000
Programmer 4000 10000
Base de Datos Oracle 11g: Taller de Administracin I 8-7
Comando MERGE (continuacin)
A continuacin se muestra el contenido de la tabla JOBS_ACQUISITION:
JOB_ID
----------
JOB_TITLE MIN_SALARY MAX_SALARY
-------------- ---------- ----------
AD_PRES
VP
20000 40000
DBA
SA
DB Admin 4200 9000
Sys Admin 2000 5000
El comando MERGE inserta en la tabla JOBS cualquier fila con un JOB_ID nuevo y a
ctualiza
las filas JOBS existentes con JOB_TITLE, si ya existe JOB_ID. El resultado es qu
e el cargo
President se cambia por VP y se agregan los trabajos nuevos SA y DBA .
Base de Datos Oracle 11g: Taller de Administracin I 8-8
Comandos COMMIT y ROLLBACK
Los siguientes comandos se utilizan para terminar una
transaccin:

COMMIT: Hace que el cambio sea permanente


ROLLBACK: Deshace el cambio
Copyright 2013, Oracle. Todos los derechos reservados.
Comandos COMMIT y ROLLBACK
Por defecto, cada comando DML que se introduce no est confirmado. Varias herramie
ntas
(incluida iSQL*Plus) tienen opciones que se pueden definir para confirmar cada c
omando o un
grupo de comandos.
Antes de emitir COMMIT o ROLLBACK, los cambios tienen un estado pendiente. Slo el
usuario
que ha realizado el cambio puede ver los datos cambiados. Otros usuarios pueden
seleccionar los
mismos datos, pero los vern como estaban antes de realizar cualquier cambio. Ningn
otro
usuario puede emitir DML en los mismos datos que otro usuario ha cambiado.
Por defecto, un usuario que intente realizar un cambio en la misma fila que otro
usuario tiene
que esperar a que el primer usuario confirme el cambio o realice un rollback. El
mecanismo de
bloqueo de la base de datos Oracle controla esta operacin de forma automtica. Pues
to que el
mecanismo de bloqueo est incorporado en la propia fila, es imposible que la base
de datos se
quede sin bloqueos.
Base de Datos Oracle 11g: Taller de Administracin I 8-9
PL/SQL
SQL
> PL/SQL
Bloqueos
La extensin de lenguaje de procedimiento para SQL
(PL/SQL) de Oracle es un lenguaje de programacin de
cuarta generacin (4GL). Proporciona:

Extensiones de procedimiento a SQL


Portabilidad entre plataformas y productos
Mayor nivel de seguridad y de proteccin de la
integridad de los datos
Soporte para programacin orientada a objetos
Copyright 2013, Oracle. Todos los derechos reservados.
PL/SQL
PL/SQL es un lenguaje de programacin de cuarta generacin propietario de Oracle que
proporciona extensiones de procedimiento a SQL. PL/SQL proporciona un entorno de
programacin comn para las aplicaciones y las bases de datos Oracle independienteme
nte
del sistema operativo o de la plataforma de hardware.
Con PL/SQL, puede manipular datos con sentencias SQL y controlar el flujo de pro
gramas
con estructuras de procedimientos como IF-THEN, CASE y LOOP. Tambin puede declara
r
constantes y variables, definir procedimientos y funciones, utilizar recopilacio
nes y tipos de
objetos, e interrumpir errores de tiempo de ejecucin. El programa PL/SQL tambin pu
ede
llamar a programas escritos en otros lenguajes como C, C++ y Java.
PL/SQL tambin proporciona proteccin de los datos. El emisor necesita conocer las e
structuras
de datos que se estn leyendo o manipulando para realizar la llamada. Asimismo, ta
mbin
necesita tener permiso para acceder a esos objetos; si el emisor tiene permiso p
ara ejecutar el
programa PL/SQL, es todo lo que necesita. De manera opcional, existe otro modo d
e permisos
para llamar a PL/SQL en el que el emisor tiene que disponer de permiso para ejec
utar cada
sentencia que se ejecute durante el programa llamado.
Base de Datos Oracle 11g: Taller de Administracin I 8-10
PL/SQL (continuacin)
Puesto que se ejecuta en la base de datos, el cdigo PL/SQL es muy eficaz para las
operaciones
que utilizan muchos datos y minimiza el trfico de red en las aplicaciones.
Para obtener ms informacin sobre estructuras de procedimientos y usos de PL/SQL, c
onsulte la
documentacin PL/SQL User s Guide and Reference.
Base de Datos Oracle 11g: Taller de Administracin I 8-11
Administracin de Objetos PL/SQL
Los administradores de la base de datos deberan
estar capacitados para:

Identificar problemas de objetos PL/SQL


Recomendar el uso adecuado de PL/SQL
Cargar objetos PL/SQL en la base de datos
Ayudar a los desarrolladores de PL/SQL a
solucionar problemas
Copyright 2013, Oracle. Todos los derechos reservados.
Administracin de Objetos PL/SQL
Como DBA, normalmente no es responsable de cargar el cdigo PL/SQL en la base de d
atos
ni de ayudar a los desarrolladores a solucionar problemas. En general tampoco se
espera
que escriba aplicaciones mediante el uso de PL/SQL, pero debera estar suficientem
ente
familiarizado con los diferentes objetos PL/SQL para realizar recomendaciones a
los
desarrolladores de aplicaciones e identificar objetos con problemas.
En Database Control, puede acceder a objetos PL/SQL si hace clic en el separador
Administration situado bajo Schema. Al hacer clic en el tipo de objeto, puede vi
sualizar,
modificar y crear el tipo de objeto PL/SQL seleccionado.
Base de Datos Oracle 11g: Taller de Administracin I 8-12
Objetos PL/SQL
Existen muchos tipos de objetos de base de datos
PL/SQL:

Paquete
Cuerpo del paquete
Cuerpo del tipo
Procedimiento
Funcin
Disparador
Copyright 2013, Oracle. Todos los derechos reservados.
Objetos PL/SQL

Paquete: Un paquete es una recopilacin de procedimientos y funciones que estn


relacionados lgicamente. Esta parte del paquete tambin se denomina especificacin
y describe la interfaz para las aplicaciones; declara los tipos, variables, cons
tantes,
excepciones, cursores y subprogramas disponibles para su uso.
Cuerpo del paquete: El cuerpo define totalmente los cursores y subprogramas, y d
e este
modo implementa la especificacin. El cuerpo contiene los detalles de implementacin
y
las declaraciones privadas, que estn ocultas para el emisor.
Cuerpo del tipo: Es una recopilacin de mtodos (procedimientos y funciones) asociad
os
a los tipos de dato definidos por el usuario. Para obtener ms informacin sobre los
tipos de
dato definidos por el usuario, consulte Oracle Database Application Developer s Gu
ide
Object Relational Features.
Procedimiento: Un procedimiento es un bloque PL/SQL que realiza una accin concret
a.
Funcin: Una funcin es un bloque PL/SQL que devuelve un nico valor mediante el
comando PL/SQL RETURN. Es un procedimiento que tiene un valor de retorno.
Disparador: Un disparador es un bloque PL/SQL que se ejecuta cuando se produce u
n
evento concreto en la base de datos. Estos eventos se pueden basar en una tabla,
por
ejemplo, cuando se inserta una fila en la tabla. Tambin pueden ser eventos de bas
e de
datos, como cuando un usuario se conecta a la base de datos.
Base de Datos Oracle 11g: Taller de Administracin I 8-13
Funciones
Copyright 2013, Oracle. Todos los derechos reservados.
Funciones
Las funciones PL/SQL se utilizan normalmente para calcular un valor. Existen muc
has funciones
incorporadas como SYSDATE, SUM, AVG y TO_DATE. Los desarrolladores tambin crean s
us
propias funciones al escribir aplicaciones. El cdigo para una funcin PL/SQL debe c
ontener una
sentencia RETURN. Para crear funciones PL/SQL hay que introducir un nombre, un e
squema y
un cdigo de origen, como se muestra en la diapositiva.
La funcin compute_tax mostrada en la diapositiva se crea con el siguiente comando
SQL:
CREATE OR REPLACE FUNCTION compute_tax (salary NUMBER)
RETURN NUMBER
AS
BEGIN
IF salary<5000 THEN
RETURN salary*.15;
ELSE
RETURN salary*.33;
END IF;
END;
/
Base de Datos Oracle 11g: Taller de Administracin I 8-14
Procedimientos
Los procedimientos se utilizan para realizar una
accin concreta. Estos procedimientos:

Transfieren valores de entrada y salida mediante


una lista de argumentos
Se llaman con el comando CALL
Copyright 2013, Oracle. Todos los derechos reservados.
Procedimientos
Los procedimientos PL/SQL realizan una accin concreta. Al igual que las funciones
, los
procedimientos pueden aceptar valores de entrada y realizar sentencias condicion
ales como
IF-THEN, CASE y LOOP.
Base de Datos Oracle 11g: Taller de Administracin I 8-15
Paquetes
Los paquetes son recopilaciones de funciones y
procedimientos. Cada paquete debe constar de
dos objetos:

Especificacin del paquete


Cuerpo del paquete
Especificacin del paquete
Copyright 2013, Oracle. Todos los derechos reservados.
Paquetes
Los paquetes son recopilaciones de funciones y procedimientos. Existen ventajas
de rendimiento
y mantenimiento al agrupar funciones y procedimientos en un nico paquete. Cada pa
quete debe
estar formado por dos objetos de base de datos compilados por separado:

Especificacin del paquete: Este objeto (en ocasiones denominado cabecera del paqu
ete)
tiene un tipo de objeto PACKAGE y slo contiene la definicin de los procedimientos,
funciones y variables del paquete.
Cuerpo del paquete: Este objeto tiene un tipo de objeto PACKAGE BODY y contiene
el
cdigo real de los subprogramas definidos en la especificacin del paquete.
Los procedimientos y funciones que se llaman desde un paquete se llaman mediante
una
notacin de puntos:
nombre_paquete.nombre_procedimiento o nombre_funcin
En el paquete que se muestra en la diapositiva, los subprogramas se pueden llama
r de la
siguiente forma:
SQL> SELECT money.compute_tax(salary) FROM hr.employees
WHERE employee_id=107;
SQL> EXECUTE money.give_raise_to_all;
Base de Datos Oracle 11g: Taller de Administracin I 8-16
Especificacin y Cuerpo del Paquete
Copyright 2013, Oracle. Todos los derechos reservados.
Cuerpo del Paquete
Los cuerpos de paquetes:
Estn separados de las especificaciones del paquete. Por este motivo, el cdigo del
cuerpo
se puede cambiar y recompilar, y otros objetos que son dependientes de la especi
ficacin
no se marcan como no vlidos.
Contienen el cdigo para los subprogramas definidos en la especificacin del paquete
.
Aqu es dnde se realiza el trabajo. La especificacin muestra cmo llamar a los
subprogramas del paquete; el cuerpo es la seccin de cdigo.
No se pueden compilar a menos que la especificacin del paquete ya se haya compila
do.
Puede crear una especificacin sin cuerpo, pero no puede crear un cuerpo sin
especificacin.
Se pueden ajustar para ocultar detalles del cdigo. Wrap es un programa autnomo que
oculta cdigo de origen PL/SQL de manera que puede entregar aplicaciones PL/SQL si
n
exponer este cdigo de origen. Para obtener ms informacin sobre el uso de Wrap,
consulte PL/SQL User s Guide and Reference.
Base de Datos Oracle 11g: Taller de Administracin I 8-17
Paquetes Incorporados

La base de datos Oracle tiene ms de 350 paquetes


PL/SQL incorporados que proporcionan:
Utilidades de administracin y mantenimiento
Funciones ampliadas
Utilice el comando DESCRIBE para visualizar los
subprogramas.
Copyright 2013, Oracle. Todos los derechos reservados.
Paquetes Incorporados
Los paquetes PL/SQL incorporados que se proporcionan con la base de datos Oracle
proporcionan acceso a funciones ampliadas de la base de datos, como el servicio
de gestin de
colas avanzadas, el cifrado y la entrada/salida (E/S) de archivos. Tambin incluye
n muchas
utilidades de administracin y de mantenimiento.
Los paquetes que utiliza un administrador dependen del tipo de aplicaciones que
sirve la base
de datos. A continuacin se muestran algunos de los paquetes de administracin y de
mantenimiento ms comunes:
DBMS_STATS: Recopilacin, visualizacin y modificacin de estadsticas del optimizador
DBMS_OUTPUT: Generacin de salida de PL/SQL
DBMS_SESSION: Acceso PL/SQL a las sentencias ALTER SESSION y SET ROLE
DBMS_RANDOM: Generacin de nmeros aleatorios
DBMS_UTILITY: Obtencin de la hora, hora de la CPU y la informacin de versin;
clculo de un valor hash y realizacin de otras muchas funciones
DBMS_SCHEDULER: Planificacin de funciones y procedimientos que se pueden llamar
desde PL/SQL
DBMS_CRYPTO: Cifrado y descifrado de datos de la base de datos
UTL_FILE: Lectura y escritura en los archivos del sistema operativo desde PL/SQL
Nota: Para obtener ms informacin sobre estos y otros paquetes incorporados, consul
te el
manual PL/SQL Packages and Types Reference.
Base de Datos Oracle 11g: Taller de Administracin I 8-18
Disparadores
Copyright 2013, Oracle. Todos los derechos reservados.
Disparadores
Los disparadores son objetos de cdigo PL/SQL que se almacenan en la base de datos
y que se
ejecutan o arrancan automticamente cuando sucede algo. La base de datos Oracle perm
ite que
muchas acciones sirvan como eventos disparadores, entre las que se incluyen una
insercin en
una tabla, la conexin de un usuario a la base de datos y el intento de borrar una
tabla o el
cambio de valores de auditora.
Los disparadores pueden llamar a otros procedimientos o funciones. Lo ms recomend
able es
acortar todo lo posible el cdigo del disparador y colocar todo aquello que necesi
te un cdigo
ms largo en un paquete independiente.
Los DBA utilizan disparadores para ayudar en las auditoras basadas en valores (se
tratar en
la leccin titulada Implementacin de Seguridad de la Base de Datos Oracle ), para apli
car
restricciones complejas y para automatizar muchas tareas. Por ejemplo, el dispar
ador
SECURE_EMPLOYEES que se muestra en la diapositiva registra todas las sentencias
DML
en una tabla de mantenimiento.
Base de Datos Oracle 11g: Taller de Administracin I 8-19
Tipo de Evento Ejemplos de Eventos DML INSERT, UPDATE, DELETE DDL CREATE, DROP,
ALTER, GRANT, REVOKE, RENAME Base de datos LOGON, LOGOFF, STARTUP, SHUTDOWN, SER
VERERROR
Eventos Disparadores
Copyright 2013, Oracle. Todos los derechos reservados.
Eventos Disparadores
Existen muchos eventos que se pueden utilizar para arrancar un disparador y se d
ividen en tres
categoras.
Los disparadores de eventos DML se arrancan cuando las sentencias modifican los
datos.
Los disparadores de eventos DDL se arrancan cuando las sentencias crean un objet
o o lo
modifican de alguna forma.
Los disparadores de evento de base de datos se arrancan cuando suceden ciertos e
ventos en
la base de datos.
Se puede especificar que la mayora de los disparadores arranquen antes o despus de
que se
produzca el evento. Con los eventos DML, el disparador se puede disear para que s
e arranque
una vez con la sentencia o con cada fila que se modifique.
Base de Datos Oracle 11g: Taller de Administracin I 8-20
Bloqueos
SQL
PL/SQL
> Bloqueos

Los bloqueos evitan que varias sesiones cambien


los mismos datos al mismo tiempo.
Se obtienen automticamente en el nivel ms bajo
posible para una sentencia determinada.
No escalan.
Transaccin 1
SQL> UPDATE employees
2 SET salary=salary+100
3 WHERE employee_id=100;
Transaccin 2
SQL> UPDATE employees
2 SET salary=salary*1.1
3 WHERE employee_id=100;
Copyright 2013, Oracle. Todos los derechos reservados.
Bloqueos
Para que la base de datos permita que una sesin modifique datos, la sesin debe blo
quear
primero los datos que se van a modificar. Un bloqueo ofrece a la sesin el control
exclusivo
sobre los datos, para que ninguna otra transaccin pueda modificar los datos bloqu
eados hasta
que se libera el bloqueo.
Las transacciones pueden bloquear filas individuales de datos, varias filas o in
cluso tablas
completas. La base de datos Oracle 11g soporta tanto bloqueo manual como el auto
mtico.
Los bloqueos adquiridos automticamente eligen siempre el nivel de bloqueo ms bajo
posible
para minimizar posibles conflictos con otras transacciones.
Base de Datos Oracle 11g: Taller de Administracin I 8-21
Mecanismo de Bloqueo

Alto nivel de simultaneidad de datos:


Bloqueos de nivel de fila para inserciones,
actualizaciones y supresiones
No se necesita ningn bloqueo en las consultas
Gestin automtica de la cola
Bloqueos retenidos hasta que finaliza la transaccin
(con la operacin COMMIT o ROLLBACK)
Transaccin 1
SQL> UPDATE employees
2 SET salary=salary+100
3 WHERE employee_id=100;
Transaccin 2
SQL> UPDATE employees
2 SET salary=salary*1.1
3 WHERE employee_id=101;
Copyright 2013, Oracle. Todos los derechos reservados.
Mecanismo de Bloqueo
El mecanismo de bloqueo est diseado para proporcionar el mximo grado posible de
simultaneidad de datos en la base de datos. Las transacciones que modifican dato
s adquieren
bloqueos de nivel de fila en lugar de bloqueos de nivel de tabla o de bloque. La
s modificaciones
de objetos (como movimientos de tabla) obtienen bloqueos de nivel de objeto en l
ugar de
bloqueos de todo el esquema o base de datos.
Las consultas de datos no necesitan ningn bloqueo y una consulta se realiza corre
ctamente
aunque los datos estn bloqueados (mostrando siempre el original, el valor previo
al bloqueo
reconstruido a partir de informacin de deshacer).
Cuando varias transacciones necesitan bloquear el mismo recurso, la primera tran
saccin que
solicita el bloqueo lo obtiene. Las dems transacciones esperan hasta que termina
la primera
transaccin. El mecanismo de cola es automtico y no necesita la interaccin del admin
istrador.
Todos los bloqueos se liberan al final de una transaccin. Las transacciones se co
mpletan cuando
se emite un comando COMMIT o ROLLBACK. En caso de una transaccin fallida, el mism
o
proceso en segundo plano que automticamente realiza un rollback de los cambios de
la
transaccin fallida libera todos los bloqueos retenidos por esa transaccin.
Base de Datos Oracle 11g: Taller de Administracin I 8-22
Hora: 09:00:00 Transaccin 1 UPDATE hr.employees SET salary=salary+100 WHERE emplo
yee_id=100; Transaccin 2 UPDATE hr.employees SET salary=salary+100 WHERE employee
_id=101; Transaccin 3 UPDATE hr.employees SET salary=salary+100 WHERE employee_id
=102; ... ... Transaccin x UPDATE hr.employees SET salary=salary+100 WHERE employ
ee_id=xxx;
Simultaneidad de Datos
Copyright 2013, Oracle. Todos los derechos reservados.
Simultaneidad de Datos
El mecanismo de bloqueo es por defecto un modo de bloqueo detallado de nivel de
fila. Distintas
transacciones pueden estar actualizando diferentes filas dentro de la misma tabl
a sin interferir las
unas en las otras.
Aunque el modelo por defecto es el bloqueo en el nivel de fila, la base de datos
Oracle soporta el
bloqueo manual en niveles superiores si es necesario:
SQL> LOCK TABLE employees IN EXCLUSIVE MODE;
Table(s) Locked.
Con la sentencia anterior, cualquier otra transaccin que intente actualizar una f
ila de la tabla
bloqueada debe esperar hasta que termine la transaccin que emiti la solicitud de b
loqueo.
EXCLUSIVE es el modo de bloqueo ms absoluto. Los otros modos de bloqueo son los
siguientes:
ROW SHARE: Permite el acceso simultneo a la tabla bloqueada, pero prohbe que las
sesiones bloqueen toda la tabla para un acceso exclusivo.
ROW EXCLUSIVE: Igual que ROW SHARE, pero tambin prohbe el bloqueo en el modo
SHARE. Los bloqueos ROW EXCLUSIVE se obtienen automticamente al actualizar,
insertar o suprimir datos.
Base de Datos Oracle 11g: Taller de Administracin I 8-23
Simultaneidad de Datos (continuacin)
SHARE: Permite consultas simultneas, pero prohbe actualizaciones en la tabla bloqu
eada.
Es necesario un bloqueo SHARE (y se solicita automticamente) para crear un ndice e
n
una tabla.
SHARE ROW EXCLUSIVE: Se utiliza para consultar una tabla completa y permitir que
otros consulten filas de la misma, pero prohbe que los dems bloqueen la tabla en m
odo
SHARE o actualicen filas.
EXCLUSIVE: Permite realizar consultas de la tabla bloqueada pero prohbe las dems
actividades en ella. Es necesario un bloqueo EXCLUSIVE para borrar una tabla.
Como cualquier solicitud de bloqueo, las sentencias de bloqueo manual esperan ha
sta que todas
las sesiones que ya tienen bloqueos o que los han solicitado con anterioridad li
beren sus
bloqueos. El comando LOCK acepta un argumento especial que controla el comportam
iento de
espera, NOWAIT.
NOWAIT devuelve el control inmediatamente si la tabla especificada ya est bloquea
da por otra
sesin:
SQL> LOCK TABLE hr.employees IN SHARE MODE NOWAIT;
LOCK TABLE hr.employees IN SHARE MODE NOWAIT
*
ERROR at line 1:
ORA-00054: resource busy and acquire with NOWAIT specified
Normalmente no es necesario bloquear manualmente los objetos. El mecanismo de bl
oqueo
automtico proporciona la simultaneidad de datos necesaria para la mayora de las ap
licaciones.
Base de Datos Oracle 11g: Taller de Administracin I 8-24
Bloqueos de DML
Transaccin 1
SQL> UPDATE employees
2 SET salary=salary*1.1
3 WHERE employee_id= 107;
1 row updated.
Transaccin 2
SQL> UPDATE employees
2 SET salary=salary*1.1
3 WHERE employee_id= 106;
1 row updated.
Las transacciones de DML deben adquirir dos bloqueos:

Bloqueo EXCLUSIVE de fila para la fila o filas que se


van a actualizar
Bloqueo de nivel de tabla ROW EXCLUSIVE para la
tabla que contiene las filas
Copyright 2013, Oracle. Todos los derechos reservados.
Bloqueos de DML
Las transacciones de DML obtienen dos bloqueos:
Bloqueo EXCLUSIVE de fila para la fila o filas que se van a actualizar.
Bloqueo de nivel de tabla ROW EXCLUSIVE en la tabla que se va a actualizar. Sirv
e para
evitar que otra sesin bloquee la tabla completa (posiblemente para borrarla o tru
ncarla)
mientras se realiza el cambio.
Base de Datos Oracle 11g: Taller de Administracin I 8-25
Mecanismo de Puesta en Cola
El mecanismo de puesta en cola realiza el seguimiento
de lo siguiente:

Sesiones en espera de bloqueos


Modo de bloqueo solicitado
Orden en el que las sesiones solicitaron el bloqueo
Copyright 2013, Oracle. Todos los derechos reservados.
Mecanismo de Puesta en Cola
Las solicitudes de bloqueos se ponen en cola automticamente. En cuanto termina la
transaccin
que retiene un bloqueo, la siguiente sesin de la cola recibe el bloqueo.
El mecanismo de puesta en cola realiza el seguimiento del orden en el que se han
solicitado los
bloqueos y el modo de bloqueo solicitado.
Las sesiones que ya retienen un bloqueo pueden solicitar convertir dicho bloqueo
sin tener que ir
al final de la cola. Por ejemplo, si una sesin retiene un bloqueo SHARE en una ta
bla, la sesin
puede solicitar convertir el bloqueo SHARE en un bloqueo EXCLUSIVE. Siempre que
nadie ms
tenga ya un bloqueo EXCLUSIVE o SHARE de la tabla, se otorgar un bloqueo SHARE a
la
sesin que retiene el bloqueo EXCLUSIVE sin tener que volver a esperar en la cola.
Base de Datos Oracle 11g: Taller de Administracin I 8-26
UPDATE employees SET salary=salary+100 WHERE employee_id=100; 1 row updated. 9:0
0:00 UPDATE employees SET salary=salary+100 WHERE employee_id=101; 1 row updated
. UPDATE employees SET COMMISION_PCT=2 WHERE employee_id=101; La sesin espera en
la cola debido a un conflicto de bloqueo. 9:00:05 SELECT sum(salary) FROM employ
ees; SUM(SALARY) ----------- 692634 La sesin an est en espera. 16:30:00 Muchas sele
cciones, inserciones, actualizaciones y supresiones durante las ltimas 7,5 horas,
pero ninguna confirmacin ni rollback. 1 row updated. La sesin contina. 16:30:01 co
mmit;
Conflictos de Bloqueo
Transaccin 1
Hora
Transaccin 2
Copyright 2013, Oracle. Todos los derechos reservados.
Conflictos de Bloqueo
Los conflictos de bloqueo se producen con frecuencia, pero normalmente se resuel
ven con el
tiempo y el mecanismo de cola. En algunos casos excepcionales, puede que sea nec
esaria la
intervencin del administrador en un conflicto de bloqueo. En el caso de la diapos
itiva, la
transaccin 2 obtiene un bloqueo de una nica fila a las 9:00:00 y no se realiza la
confirmacin,
dejando el bloqueo en su lugar. La transaccin 1 intenta actualizar toda la tabla
a las 9:00:05, lo
que necesita un bloqueo de todas las filas. La transaccin 2 bloquea la transaccin
1 hasta que la
transaccin 2 realiza la confirmacin a las 16:30:01.
El usuario que intenta realizar la transaccin 1 se pondra en contacto casi con tod
a probabilidad
con el administrador para solicitar ayuda en este caso, y el DBA debera detectar
y resolver el
conflicto.
Base de Datos Oracle 11g: Taller de Administracin I 8-27
Posibles Causas de Conflictos de Bloqueo

Cambios sin confirmar


Transacciones con una ejecucin muy larga
Niveles altos de bloqueo innecesarios
Copyright 2013, Oracle. Todos los derechos reservados.
Posibles Causas de Conflictos de Bloqueo
La causa ms comn de conflictos de bloqueo es un cambio sin confirmar, aunque exist
en
algunas otras causas posibles:

Transacciones con una ejecucin muy larga: Muchas aplicaciones utilizan el


procesamiento por lotes para realizar actualizaciones en bloque. Estos trabajos
por lotes
normalmente se planifican para momentos de baja o ninguna actividad de los usuar
ios,
pero puede que en algunos casos no hayan terminado o tarden demasiado en ejecuta
rse
durante el perodo de baja actividad. Los conflictos de bloqueo son comunes cuando
la
transaccin y el procesamiento por lotes se estn realizando simultneamente.
Niveles altos de bloqueo innecesarios: No todas las bases de datos soportan el b
loqueo de
nivel de fila (Oracle introdujo el soporte para los bloqueos de nivel de fila en
1988 con la
versin 6). Algunas bases de datos an realizan bloqueos en el nivel de tabla o de pg
ina.
Los desarrolladores que escriben aplicaciones destinadas a ejecutarse en muchas
bases de
datos diferentes suelen escribir sus aplicaciones con niveles de bloqueo artific
ialmente
altos para que la base de datos Oracle se comporte de manera similar a aquellos
sistemas
de base de datos con menos posibilidades. Adems, los desarrolladores nuevos en Or
acle
a veces codifican innecesariamente en niveles de bloqueo ms altos de los que nece
sita la
base de datos Oracle.
Base de Datos Oracle 11g: Taller de Administracin I 8-28
Deteccin de Conflictos de Bloqueo
Seleccione Blocking Sessions en la pgina Performance.
Haga clic en el enlace Session ID para ver informacin
sobre la sesin bloqueante, que incluye la sentencia
SQL real.
Copyright 2013, Oracle. Todos los derechos reservados.
Deteccin de Conflictos de Bloqueo
Utilice la pgina Blocking Sessions de Enterprise Manager para localizar conflicto
s de bloqueo.
Las solicitudes de bloqueo en conflicto se muestran con un diseo jerrquico en el q
ue la sesin
que retiene el bloqueo se sita en la parte superior, seguidas de todas las sesion
es que estn en
cola para el bloqueo.
Para cada sesin implicada en el conflicto se proporciona el nombre de usuario, el
identificador
de sesin y el nmero de segundos que la sesin ha estado en espera. Acceda al identif
icador de
sesin para ver las sentencias SQL reales ejecutadas o solicitadas por la sesin en
ese momento.
El monitor de diagnstico de base de datos automtico (ADDM) tambin detecta de manera
automtica los conflictos de bloqueo y puede avisarle de las tendencias de bloqueo
ineficaces.
Base de Datos Oracle 11g: Taller de Administracin I 8-29
Resolucin de Conflictos de Bloqueo
Para resolver un conflicto de bloqueo:

Haga que la sesin que retiene el bloqueo realice


una confirmacin o un rollback
Termine la sesin que retiene el bloqueo como
ltimo recurso
Copyright 2013, Oracle. Todos los derechos reservados.
Resolucin de Conflictos de Bloqueo
Para resolver un conflicto de bloqueo, la sesin que retiene el bloqueo debe liber
arlo. El mejor
modo de que la sesin libere el bloqueo es ponerse en contacto con el usuario y pe
dir que
termine la transaccin.
En caso de emergencia, el administrador puede terminar la sesin que retiene el bl
oqueo
haciendo clic en el botn Kill Session. Recuerde que cuando se mata una sesin todo
el trabajo
de la transaccin actual se pierde (se realiza un rollback). Un usuario cuya sesin
se ha matado
debe volver a conectarse y rehacer todo el trabajo desde la ltima confirmacin de l
a sesin
matada.
Los usuarios cuyas sesiones se han matado recibirn el siguiente error la siguient
e vez que
intenten emitir una sentencia SQL:
ORA-03135: connection lost contact
Base de Datos Oracle 11g: Taller de Administracin I 8-30
Resolucin de Conflictos de Bloqueo
mediante SQL
Las sentencias SQL se pueden utilizar para determinar
la sesin de bloqueo y matarla.
1
2
SQL> select sid, serial#, username
from v$session where sid in
(select blocking_session from v$session)
Resultado:
SQL> alter system kill session '144,8982' immediate;
Copyright 2013, Oracle. Todos los derechos reservados.
Resolucin de Conflictos de Bloqueo mediante SQL
La manipulacin de sesiones, al igual que la mayora del resto de tareas realizadas
en Enterprise
Manager, tambin se puede realizar mediante la emisin de sentencias SQL. La tabla
v$session contiene detalles de todas las sesiones conectadas. blocking_session e
s el
identificador de sesin de la sesin que se est bloqueando. De esta forma, si consult
a el valor
de SID y SERIAL#, donde SID se corresponde con un identificador de sesin de bloqu
eo,
dispondr de la informacin necesaria para realizar la operacin kill session.
Base de Datos Oracle 11g: Taller de Administracin I 8-31
Transaccin 1 Transaccin 2 UPDATE employees SET salary = salary x 1.1 WHERE employe
e_id = 1000; 9:00 UPDATE employees SET manager = 1342 WHERE employee_id = 2000;
UPDATE employees SET salary = salary x 1.1 WHERE employee_id = 2000; 9:15 UPDATE
employees SET manager = 1342 WHERE employee_id = 1000; ORA-00060: Deadlock dete
cted while waiting for resource 9:16
Interbloqueos
Copyright 2013, Oracle. Todos los derechos reservados.
Interbloqueos
Un interbloqueo es un ejemplo especial de conflicto de bloqueo. Los interbloqueo
s surgen
cuando dos o ms sesiones esperan los datos que bloquean entre ellas. Puesto que c
ada una
est esperando a la otra, ninguna puede terminar la transaccin para resolver el con
flicto.
La base de datos Oracle detecta automticamente los interbloqueos y termina la sen
tencia con un
error. La respuesta adecuada a ese error es una accin de confirmacin o de rollback
, que libera
cualquier otro bloqueo de esa sesin para que la otra sesin pueda continuar con su
transaccin.
En el ejemplo de la diapositiva, la transaccin 1 debe realizar una confirmacin o u
n rollback
como respuesta al error detectado de interbloqueo. Si realiza una confirmacin, ne
cesitar
volver a enviar la segunda actualizacin para terminar su transaccin. Si realiza un
rollback,
debe volver a enviar ambas sentencias para terminar su transaccin.
Base de Datos Oracle 11g: Taller de Administracin I 8-32
Resumen
En esta leccin, debe haber aprendido lo siguiente:


Gestionar datos mediante el uso de SQL
Identificar y administrar objetos PL/SQL
Describir los disparadores y los eventos
disparadores
Controlar y resolver conflictos de bloqueo
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 8-33
Visin General de la Prctica:
Gestin de Datos y Simultaneidad
En esta prctica se abordan los siguientes temas:

Identificacin de conflictos de bloqueo


Resolucin de conflictos de bloqueo
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 8-34
Gestin de Datos de Deshacer
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado para
lo siguiente:

Explicar DML y la generacin de datos de


deshacer
Controlar y administrar datos de deshacer
Describir la diferencia entre datos de deshacer y
de redo
Configurar la retencin de deshacer
Garantizar la retencin de deshacer
Utilizar el Asesor de Deshacer
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 9-2
Manipulacin de Datos

El lenguaje de manipulacin de datos (DML)


consta de las siguientes sentencias SQL:

INSERT
UPDATE
DELETE
MERGE

DML siempre se ejecuta como parte de una


transaccin, que puede ser:
Una transaccin en la que se ha realizado rollback,
mediante el comando ROLLBACK
Una transaccin confirmada, mediante el comando
COMMIT
Copyright 2013, Oracle. Todos los derechos reservados.
Manipulacin de Datos
Los datos se manipulan, o modifican, mediante la clase DML de sentencias SQL: IN
SERT,
UPDATE, DELETE y MERGE. Estas sentencias se ejecutan como parte de una transaccin
,
que se inicia con la primera sentencia DML correcta y termina con un comando COM
MIT o
ROLLBACK. En las transacciones slo se puede realizar una operacin de confirmacin o
de
rollback.
La operacin de rollback tambin se puede producir si hay un fallo del sistema o de
proceso.
Nota: El comando MERGE realiza una combinacin de inserciones y actualizaciones pa
ra
fusionar datos de una tabla en otra. Este tema se aborda en la leccin titulada Ges
tin de Datos
y Simultaneidad .
Base de Datos Oracle 11g: Taller de Administracin I 9-3
Datos de Deshacer
Los datos de deshacer:

Son una copia de los datos originales antes de la


modificacin
Se capturan para cada transaccin que cambia datos
Se retienen al menos hasta que finaliza la transaccin
Se utilizan para dar soporte a:
Operaciones de rollback
Consultas de flashback y de
lectura consistente
Recuperacin de
transacciones fallidas
Usuario
Copyright 2013, Oracle. Todos los derechos reservados.
Datos de Deshacer
La base de datos Oracle guarda el valor anterior (datos de deshacer) cuando un p
roceso cambia
datos de una base de datos. Almacena los datos como existan antes de que se modif
icaran. La
captura de datos de deshacer le permite realizar una operacin de rollback en los
datos no
confirmados. Los datos de deshacer tambin soportan consultas de flashback y de le
ctura
consistente.
Las consultas de lectura consistente proporcionan resultados que son consistente
s con los datos
en el momento en que se inicia una consulta. Para que una consulta de lectura co
nsistente se
realice correctamente, la informacin original debe existir an como informacin de de
shacer.
Mientras se retenga la informacin de deshacer, la base de datos Oracle puede reco
nstruir datos
que cumplan las consultas de lectura consistente.
Las consultas de flashback son consultas que piden con determinacin una versin de
los datos
tal como existan en algn momento del pasado. Siempre que la informacin de deshacer
del
pasado exista, las consultas de flashback pueden terminar correctamente.
Base de Datos Oracle 11g: Taller de Administracin I 9-4
Datos de Deshacer (continuacin)
Los datos de deshacer tambin se utilizan para la recuperacin de transacciones fall
idas.
Una transaccin fallida se produce cuando una sesin de usuario termina de forma ano
rmal
(posiblemente debido a errores de red o a un fallo en la computadora cliente) an
tes de que el
usuario decida confirmar la transaccin o realizar un rollback de la misma. Las tr
ansacciones
fallidas tambin se pueden producir cuando la instancia falla.
En caso de una transaccin fallida, se selecciona el comportamiento ms seguro y la
base de
datos Oracle deshace todos los cambios realizados por el usuario, restaurando lo
s datos
originales.
La informacin de deshacer se retiene para todas las transacciones al menos hasta
que la
transaccin termine debido a:
Usuarios que deshacen la transaccin (operacin de rollback)
Usuarios que terminan una transaccin (confirmacin)
Sesin de usuario que termina de forma anormal (operacin de rollback)
Sesin de usuario que termina de forma normal con una salida (confirmacin)
La cantidad de datos de deshacer que se retienen y el tiempo de esa retencin depe
nden de la
cantidad de actividad de la base de datos y de su configuracin.
Base de Datos Oracle 11g: Taller de Administracin I 9-5
Transacciones y Datos de Deshacer
Valor anterior
Tabla
Segmento de
deshacer
Valor
nuevo

Cada transaccin se asigna a


un nico segmento de
deshacer.
Un segmento de deshacer
puede dar servicio a ms de
una transaccin al mismo
tiempo.
Actualizar la
transaccin
Copyright 2013, Oracle. Todos los derechos reservados.
Transacciones y Datos de Deshacer
Al iniciar una transaccin, sta se asigna a un segmento de deshacer. A lo largo de
la
transaccin, cuando se modifiquen los datos, los valores originales (antes del cam
bio) se
copiarn al segmento de deshacer. Puede ver qu transacciones se asignan a los disti
ntos
segmentos de deshacer comprobando la vista de rendimiento dinmico v$transaction.
Los segmentos de deshacer son segmentos especializados que la instancia crea aut
omticamente,
segn sea necesario, para soportar las transacciones. Al igual que todos los segme
ntos, los
segmentos de deshacer estn formados por extensiones que a su vez constan de bloqu
es de datos.
Los segmentos de deshacer crecen y se reducen automticamente si es necesario, act
uando como
buffer de almacenamiento circular para las transacciones asignadas.
Las transacciones rellenan extensiones en los segmentos de deshacer hasta que se
termina una
transaccin o se consume todo el espacio. Si una extensin se llena completamente y
se necesita
ms espacio, la transaccin adquiere ese espacio de la siguiente extensin del segment
o. Al
consumir todas las extensiones, la transaccin se volver a ajustar a la primera ext
ensin o
solicitar que se asigne una extensin nueva al segmento de deshacer.
Nota: Las operaciones DML en paralelo pueden hacer que una transaccin utilice rea
lmente ms
de un segmento de deshacer. Para obtener ms informacin sobre la ejecucin de DML en
paralelo, consulte Oracle Database Administrator s Guide 11g.
Base de Datos Oracle 11g: Taller de Administracin I 9-6
Almacenamiento de Informacin de Deshacer
La informacin de deshacer se almacena en segmentos
de deshacer que, a su vez, se almacenan en un
tablespace de deshacer. Los tablespaces de deshacer:

Slo se utilizan para los segmentos de deshacer


Tienen consideraciones especiales sobre la
recuperacin
Slo se pueden asociar a una nica instancia
Necesitan que slo uno de ellos sea el tablespace
de deshacer actual en el que se puede
escribir para una instancia especificada
en un momento determinado
Copyright 2013, Oracle. Todos los derechos reservados.
Almacenamiento de Informacin de Deshacer
Los segmentos de deshacer slo pueden existir en una forma especializada de tables
pace
denominada tablespace de deshacer. Aunque una base de datos puede tener numeroso
s
tablespaces de deshacer, slo se puede designar uno de ellos como el tablespace ac
tual en
el que se escribirn los datos de deshacer.
Los segmentos de deshacer siempre son propiedad de SYS. Puesto que los segmentos
actan
como buffer circular, cada segmento tiene dos extensiones como mnimo. El nmero mxim
o
de extensiones por defecto depende del tamao del bloque de base de datos, aunque
es muy alto
(32.765 para un tamao de bloque de 8 KB).
Los tablespaces de deshacer son tablespaces permanentes, gestionados localmente
con
asignacin automtica de extensiones. Se gestionan como cualquier otro tablespace ex
cepto
en lo que se refiere a la recuperacin. Puesto que se necesitan datos de deshacer
para recuperar
transacciones fallidas (como las que se pueden producir cuando una instancia fal
la), los
tablespaces de deshacer slo se pueden recuperar mientras la instancia est en estad
o MOUNT.
Las consideraciones de recuperacin para los tablespaces se abordan en la leccin ti
tulada
Recuperacin de Bases de Datos .
Base de Datos Oracle 11g: Taller de Administracin I 9-7
Deshacer Redo Registro de Cmo deshacer un cambio Cmo reproducir un cambio Se utili
za para Rollback, consistencia de lectura Aplicar transacciones pendientes de la
base de datos Se almacena en Segmentos de deshacer Archivos redo log Protege fr
ente a Lecturas inconsistentes en sistemas de varios usuarios Prdida de datos
Datos de Deshacer frente a Datos de Redo
Copyright 2013, Oracle. Todos los derechos reservados.
Datos de Deshacer frente a Datos de Redo
En un principio, los datos de deshacer y de redo se parecen bastante, aunque sir
ven para obtener
resultados diferentes. Los datos de deshacer son necesarios cuando hay que desha
cer un cambio
y esto ocurre en las operaciones de consistencia de lectura y de rollback. Los d
atos de redo son
necesarios cuando hay que realizar de nuevo los cambios, en el caso de que se ha
yan perdido por
algn motivo.
El proceso de confirmacin implica una verificacin de que los cambios de la transac
cin se han
escrito en el archivo de redo log, que se encuentra almacenado de manera persist
ente en el disco,
en lugar de en la memoria. Adems, normalmente est multiplexado. Es decir, hay vari
as copias
de los datos de redo en el disco. Incluso aunque no se hayan escrito los cambios
en los archivos
de datos en los que estn almacenados realmente los bloques de la tabla, la garanta
de que los
cambios se han escrito en el archivo de redo log es suficiente.
Por ejemplo, un corte en el suministro elctrico justo antes de que los cambios co
nfirmados se
hayan reflejado en los archivos de datos no causa ningn problema ya que la transa
ccin se ha
confirmado. Por lo tanto, cuando se vuelva a iniciar el sistema, se podrn aplicar
los cambios de
los registros de redo que no se llegaron a reflejar en los archivos de datos en
el momento del
corte de electricidad.
Base de Datos Oracle 11g: Taller de Administracin I 9-8
Control de Deshacer
Deshacer normalmente necesita poca gestin.
Las reas que se controlan incluyen:

Espacio libre en un tablespace de deshacer


Errores de tipo Snapshot too old
DBA
Copyright 2013, Oracle. Todos los derechos reservados.
Control de Deshacer
La mayor parte del tiempo la instancia gestiona automticamente las operaciones de
deshacer
casi sin intervencin del administrador de base de datos (DBA). Puede que sea nece
saria la
participacin del administrador cuando se produce lo siguiente:
Espacio insuficiente para deshacer
Los usuarios reciben mensajes de error ORA-01555 snapshot too old
La informacin de deshacer siempre se retiene hasta que una transaccin termina. Est
o significa
que si se suprimen o actualizan cantidades muy grandes de datos (las operaciones
de insercin
consumen muy poco espacio de deshacer porque la imagen original de los datos ins
ertados es un
valor nulo) sin confirmar, el tablespace de deshacer debe ser lo bastante grande
para contener los
datos originales. Imagine un caso en el que en una tabla de 50 GB se hubieran su
primido todas
las filas con el comando siguiente:
SQL> DELETE FROM reallybigtable;
Sera necesario que el tablespace tuviera espacio para 50 GB de informacin original
slo en
caso de que el usuario que emiti esta sentencia cambiara de opinin y quisiera real
izar un
rollback del cambio. Si el tablespace de deshacer se queda sin espacio para los
datos de deshacer,
los usuarios reciben un mensaje de error como el siguiente:
ORA-01650: unable to extend rollback segment
Base de Datos Oracle 11g: Taller de Administracin I 9-9
Control de Deshacer (continuacin)
El control proactivo detecta problemas de espacio en un tablespace de deshacer a
ntes de que
afecte a los usuarios.
Otro problema, con el que el administrador se puede encontrar con la informacin d
e deshacer,
es cuando una consulta tiene que acceder a informacin de deshacer que ya se ha so
brescrito.
Esto puede suceder en una consulta de flashback o con una ejecucin muy larga. Cua
ndo una
consulta necesita una instantnea de los datos como eran en algn momento del pasado y
la
reconstruccin de dicha instantnea necesita datos de deshacer que ya no existen, la
consulta
devuelve el siguiente error:
ORA-01555: snapshot too old
Esto puede suceder porque la base de datos Oracle presenta al usuario una vista
consistente de
los datos tal y como son en el momento en que se inicia la ejecucin de la consult
a. Si hay
cambios sin confirmar en la tabla en la que se realiza la consulta, la base de d
atos Oracle lee los
datos de deshacer para obtener la versin confirmada de los datos. Esto es lo que
se denomina
consistencia de lectura. Si la consulta se ejecuta durante tanto tiempo que, mie
ntras tanto, esas
modificaciones se han acabado confirmando y, posteriormente, sus datos de deshac
er se han
liberado y sobrescrito, la consulta de larga ejecucin no podr visualizar una vista
consistente de
los datos tal y como eran en el momento en que se inici dicha consulta. Por este
motivo, la
retencin de deshacer se debe configurar para que se ajuste a la consulta de ejecu
cin ms larga.
Base de Datos Oracle 11g: Taller de Administracin I 9-10
Administracin de Deshacer
La administracin de deshacer debe evitar:

Errores de espacio en un tablespace de deshacer:


Asigne un espacio correcto al tablespace de deshacer.
Asegrese peridicamente de la confirmacin de
transacciones grandes.
Errores de tipo Snapshot too old :
Configure un intervalo de retencin de deshacer adecuado.
Asigne un espacio correcto al tablespace de deshacer.
Plantese garantizar la retencin de deshacer.
Utilizar la gestin automtica de deshacer:
UNDO_MANAGEMENT=AUTO
UNDO_TABLESPACE=UNDOTBS1
DBA
Copyright 2013, Oracle. Todos los derechos reservados.
Administracin de Deshacer
Se recomienda el uso de la gestin automtica de deshacer, que se configura mediante
la
definicin del parmetro de inicializacin UNDO_MANAGEMENT en AUTO. La gestin manual de
deshacer est soportada para la compatibilidad con Oracle8i y versiones anteriores
, pero necesita
ms participacin del DBA.
Con la gestin automtica de deshacer, el DBA gestiona los datos de deshacer en el n
ivel de
tablespace, que controla qu tablespace de deshacer utiliza una instancia con el p
armetro de
inicializacin UNDO_TABLESPACE. Una vez seleccionado el tablespace de deshacer, el
administrador slo se debe preocupar de proporcionar espacio suficiente y de confi
gurar un
intervalo de retencin de deshacer.
Con la gestin manual, el DBA tambin debe tener en cuenta lo siguiente:
Asignacin de tamao a los segmentos, que incluye las extensiones mximas y el tamao
de las extensiones
Identificacin y eliminacin de transacciones bloqueantes
Creacin de segmentos de rollback suficientes para manejar transacciones (en el mo
do
manual, los segmentos de deshacer se denominan segmentos de rollback)
Seleccin de un tablespace que contenga los segmentos de rollback (los tablespaces
de
deshacer slo se utilizan con la gestin automtica de deshacer)
Base de Datos Oracle 11g: Taller de Administracin I 9-11
Configuracin de Retencin de Deshacer
UNDO_RETENTION especifica (en segundos) la cantidad
de informacin de deshacer ya confirmada que se va a
retener. Este parmetro slo se define cuando:

El tablespace de deshacer tiene activada la opcin


AUTOEXTEND
Desea definir una retencin de deshacer para
objetos grandes (LOB)
Desea garantizar la retencin
DBA
Copyright 2013, Oracle. Todos los derechos reservados.
Configuracin de Retencin de Deshacer
UNDO_RETENTION especifica (en segundos) el valor de umbral inferior de la retenc
in de
deshacer. En los tablespaces de deshacer AUTOEXTEND, el sistema retiene la opera
cin de
deshacer durante al menos el tiempo especificado en este parmetro y, de manera au
tomtica,
ajusta el perodo de retencin para cumplir con los requisitos de deshacer de las co
nsultas. En los
tablespaces de deshacer de tamao fijo, el sistema ajusta automticamente el perodo mx
imo
posible de retencin de deshacer en funcin del tamao e historial de uso del tablespa
ce de
deshacer; ignora UNDO_RETENTION a menos que est activada la garanta de retencin. De
esta forma, en la gestin automtica de deshacer, para los tres casos aqu mostrados,
se utiliza el
valor de UNDO_RETENTION. En casos distintos a los aqu mostrados, este parmetro se
ignora.
Base de Datos Oracle 11g: Taller de Administracin I 9-12
Configuracin de Retencin de Deshacer (continuacin)
La informacin de deshacer est dividida en tres categoras:

Informacin de deshacer sin confirmar: Soporta una transaccin que se est ejecutando
en ese momento y es necesaria si un usuario desea realizar un rollback o si la t
ransaccin
ha fallado. La informacin de deshacer sin confirmar nunca se sobrescribe.
Informacin de deshacer confirmada: Ya no es necesaria para dar soporte a una
transaccin en ejecucin, pero an es necesaria para cumplir con el intervalo de reten
cin
de deshacer. Tambin se denomina informacin de deshacer no vencida . La informacin
de deshacer confirmada se retiene cuando es posible sin que una transaccin activa
falle
debido a la falta de espacio.
Informacin de deshacer vencida: Ya no es necesaria para dar soporte a una transac
cin
en ejecucin. La informacin de deshacer vencida se sobrescribe cuando se necesita
espacio para una transaccin activa.
Base de Datos Oracle 11g: Taller de Administracin I 9-13
Garanta de Retencin de Deshacer
Garanta: 15 minutos
Datos de deshacer
Las sentencias SELECT
de 15 minutos o menos de ejecucin
siempre se ejecutan correctamente.
Una transaccin que genera
ms cambios de deshacer que el
espacio disponible fallar.
Copyright 2013, Oracle. Todos los derechos reservados.
Garanta de Retencin de Deshacer
El comportamiento por defecto de deshacer es sobrescribir las transacciones conf
irmadas que
an no han vencido en lugar de permitir que una transaccin activa falle debido a la
falta de
espacio de deshacer.
Este comportamiento se puede cambiar al garantizar la retencin. Con la retencin ga
rantizada,
los valores de retencin de deshacer se aplican aunque provoquen que las transacci
ones fallen.
RETENTION GUARANTEE es un atributo de tablespace ms que un parmetro de inicializac
in.
Este atributo slo se puede cambiar con las sentencias de lnea de comandos SQL. La
sintaxis
para cambiar un tablespace de deshacer por una retencin de garanta es la siguiente
:
SQL> ALTER TABLESPACE undotbs1 RETENTION GUARANTEE;
Para devolver un tablespace de deshacer garantizado a su valor normal, utilice e
l siguiente
comando:
SQL> ALTER TABLESPACE undotbs1 RETENTION NOGUARANTEE;
La garanta de retencin se aplica slo a los tablespaces de deshacer. Los intentos de
definirla en
un tablespace que no sea de deshacer tiene como resultado el siguiente error:
SQL> ALTER TABLESPACE example RETENTION GUARANTEE;
ERROR at line 1:
ORA-30044: 'Retention' can only specified for undo tablespace
Base de Datos Oracle 11g: Taller de Administracin I 9-14
Tamao de los Tablespaces de Deshacer
Tamao de espacio
de tabla actual
Ratio de consumo de deshacer
Copyright 2013, Oracle. Todos los derechos reservados.
Tamao de los Tablespaces de Deshacer
Se debe asignar un tamao a los tablespaces de deshacer para que puedan contener l
a
informacin original de todas las transacciones. Al hacer clic en el enlace Undo M
anagement
de la pgina Administration de Enterprise Manager aparece una visin general de los
datos de
deshacer del sistema que incluye los valores actuales, el consumo de deshacer po
r minuto y la
longitud de la consulta con la ejecucin ms larga observada durante un determinado
perodo
de tiempo.
Los archivos de datos que pertenecen a un tablespace de deshacer se pueden ampli
ar
automticamente cuando se quedan sin espacio libre. A diferencia de otros tablespa
ces, Oracle
Corporation recomienda que los archivos de datos asociados a los tablespaces de
deshacer no
tengan activada la extensin automtica. La primera vez que se determinan los requis
itos de
espacio de deshacer, puede que desee activar la extensin automtica de los archivos
de datos,
pero despus de haber asignado correctamente el tamao del tablespace debe desactiva
rla. La
desactivacin de la extensin automtica en archivos de datos de un tablespace de desh
acer evita
que un nico usuario consuma involuntariamente grandes cantidades de espacio en di
sco dejando
de confirmar las transacciones.
Base de Datos Oracle 11g: Taller de Administracin I 9-15
Uso del Asesor de Deshacer
Copyright 2013, Oracle. Todos los derechos reservados.
Uso del Asesor de Deshacer
A travs de la pgina de propiedades Undo Management se accede al Asesor de Deshacer
.
Ofrece una estimacin del tamao del tablespace de deshacer que resulta necesario pa
ra
satisfacer una retencin de deshacer determinada.
Indique el perodo de retencin deseado y la regin de anlisis del asesor mostrar el tam
ao de
tablespace necesario para soportar el perodo de retencin. Tambin cabe la posibilida
d de hacer
clic en un punto del grfico para ver el tamao del tablespace requerido para soport
ar el perodo
elegido.
Una vez seleccionado un perodo de retencin de deshacer, haga clic en OK para imple
mentar el
nuevo perodo de retencin.
Base de Datos Oracle 11g: Taller de Administracin I 9-16
Resumen
En esta leccin, debe haber aprendido lo siguiente:

Explicar DML y la generacin de datos de


deshacer
Controlar y administrar segmentos de deshacer
Describir la diferencia entre datos de deshacer y
de redo
Configurar la retencin de deshacer
Garantizar la retencin de deshacer
Utilizar el Asesor de Deshacer
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 9-17
Visin General de la Prctica:
Gestin de Segmentos de Deshacer
En esta prctica se abordan los siguientes temas:

Clculo del tamao del tablespace de deshacer


para dar soporte a un intervalo de retencin de
48 horas
Modificacin de un tablespace de deshacer para
dar soporte a un intervalo de retencin de 48 horas
Copyright 2013, Oracle. Todos los derechos reservados.
Base de Datos Oracle 11g: Taller de Administracin I 9-18
Implementacin de Seguridad de la
Base de Datos Oracle
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Al finalizar esta leccin, debera estar capacitado
para lo siguiente:

Describir sus responsabilidades de DBA en


cuanto a seguridad
Aplicar el principio de privilegio ms bajo
Activar la auditora de base de datos estndar
Especificar opciones de auditora
Revisar informacin de auditora
Mantener la pista de auditora
Copyright 2013, Oracle. Todos los derechos reservados.
Objetivos
Esta leccin es el punto de inicio para conocer la seguridad de Oracle. En la sigu
iente
documentacin encontrar informacin adicional:
Oracle Database Concepts 11g Release 2 (10.2)
Oracle Database Administrator s Guide 11g Release 2 (10.2)
Oracle Database Security Guide 11g Release 2 (10.2)
En los siguientes cursos encontrar formacin adicional:
Base de Datos Oracle 11g: Taller de Administracin II (D17092GC30)
Oracle Database 11g: Security (D17499GC10)
Base de Datos Oracle 11g: Taller de Administracin I 10-2

Legal:
Requisitos de Seguridad
de la Industria
> Requisitos
Privilegio ms Bajo
Auditora
Basada en Valores
Auditora Detallada
DBA
Actualiz. Seguridad
Sarbanes-Oxley Act (SOX)
Health Information Portability and Accountability
Act (HIPAA)
California Breach Law
UK Data Protection Act

Auditora
Copyright 2013, Oracle. Todos los derechos reservados.
Requisitos de Seguridad de la Industria
Hasta hace poco la preocupacin por los requisitos de seguridad era un problema de
naturaleza
individual. A menos que se manejaran datos militares o gubernamentales, existan p
ocos
requisitos legales. Esto est cambiando con rapidez. Se han aprobado varias leyes
para reforzar
la privacidad y la precisin de los datos. Junto con estas leyes, hay un requisito
para auditar las
medidas de seguridad utilizadas.
Legal: Cada una de las leyes enumeradas aqu tiene algunos requisitos especficos. E
sta lista es
representativa de muchas otras leyes que se estn aprobando en todo el mundo. Por
supuesto,
las leyes de seguridad varan de un lugar a otro.

Sarbanes-Oxley Act (SOX) requiere que las compaas pblicas refuercen y documenten
los controles internos para impedir que nadie pueda cometer actos fraudulentos q
ue puedan
comprometer la posicin financiera de una organizacin o la precisin de sus datos
financieros. El director ejecutivo y el director financiero deben dar fe de la c
ompetencia
de los controles internos y de la precisin del informe financiero. Estos director
es estn
sujetos a multas y al encarcelamiento por informes fraudulentos. Los detalles de
SOX
incluyen requisitos para proporcionar la informacin que se utiliza para generar l
os
informes y los controles internos que se usan para garantizar la integridad de l
a
informacin financiera.
Base de Datos Oracle 11g: Taller de Administracin I 10-3
Requisitos de Seguridad de la Industria (continuacin)

Health Information Portability and Accountability Act (HIPAA) est destinada a


proteger la informacin sanitaria identificable de manera personal frente a su pub
licacin o
uso incorrecto. Las entidades que retienen esa informacin deben proporcionar pist
as de
auditora de todas las personas que accedan a estos datos.
UK Data Protection Act est destinada a proteger la privacidad individual mediante
el
acceso restringido a datos identificables de manera individual. Contiene ocho pu
ntos,
uno de los cuales requiere que los datos se conserven en un lugar seguro.
Otras leyes:
-
-
-
Family Educational Rights and Privacy Act (FERPA) aborda la informacin
sanitaria y personal que conservan las escuelas.
California Breach Law requiere que una organizacin que posee variada
informacin de identidad personal (PII) (por ejemplo, tarjeta de crdito, permiso de
conducir y nmeros de identificacin gubernamentales) proteja esa informacin. Si la
informacin se puede ver comprometida, la organizacin tiene que notificarlo a todos
los individuos implicados. Hay dos leyes, CA-SB-1386 y CA-AB-1950, que se
aplican a las organizaciones que poseen PII.
Federal Information Security Management Act (FISMA) est creando estndares
y guas de seguridad mediante documentos de Federal Information Processing
Standard (FIPS) que gestiona National Institute of Standards (NIST). Estos estnda
res
se aplican a organizaciones que procesan informacin para el gobierno de Estados
Unidos.
Auditora: Muchas de estas leyes incluyen estipulaciones que requieren que los pla
nes de
seguridad (protocolos internos) se auditen peridicamente. Los requisitos de SOX s
on poco
claros y estn sujetos a la interpretacin de los directivos de la organizacin. Los d
etalles de
implementacin pueden variar ampliamente, en funcin del nivel de detalles que requi
eran los
directivos. Al ser tan poco claro el SOX, aunque las penas son severas, resulta
importante
proteger a su compaa. El costo de las medidas de seguridad se debe equilibrar con
respecto al
riesgo. Nadie le certificar que est totalmente seguro. Una buena solucin es el cons
enso de la
industria. Si cumple con las prcticas de seguridad mnimas acordadas y ha aplicado
la debida
diligencia, es posible que est a salvo de las consecuencias penales ms duras de la
ley. Algunos
recursos buenos para las prcticas de los estndares de la industria son SysAdmin, A
udit,
Network, Security (SANS) Institute, CERT/CC aplicados por la Carnegie Mellon Uni
versity
para el Ministerio de Defensa y el estndar de certificacin ISO-17799:
http://www.sans.org/index.php
http://www.cert.org/nav/index.html
http://www.iso17799software.com/
El estndar de certificacin ISO-17799 es un estndar internacional de prcticas de segu
ridad.
Incluye prcticas recomendadas, certificacin y valoracin de riesgos. Aborda un rango
amplio
de problemas e incluye polticas escritas previamente.
Base de Datos Oracle 11g: Taller de Administracin I 10-4
Separacin de Responsabilidades

Se debe confiar en los usuarios con privilegios


de DBA. Considere lo siguiente:
Abuso de confianza
Las pistas de auditora protegen la posicin
protegida
Se deben compartir las responsabilidades
de DBA.
No se deben compartir nunca las cuentas.
El DBA y el Administrador del Sistema tienen
que ser personas diferentes.
Responsabilidades separadas del operador y
del DBA.
Copyright 2013, Oracle. Todos los derechos reservados.
Separacin de Responsabilidades
stos son los principales requisitos necesarios para satisfacer la separacin de las
tareas.
Se debe confiar en los DBA: Es difcil limitar a un DBA. Para hacer su trabajo, el
DBA requiere
privilegios de alto nivel. Un DBA posee una posicin de confianza y se debe invest
igar a fondo.
Incluso un DBA protegido debe tener responsabilidad. Considere lo siguiente: