Taller I DBA-Oracle 2

244
Base de Datos Oracle 10g: Taller de Administración I Volumen II Guía del Alumno D17090CS30 Edición 3.0 Noviembre de 2005 D50254 Oracle Internal & Oracle Academy Use Only

Transcript of Taller I DBA-Oracle 2

Page 1: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I

Volumen II • Guía del Alumno

D17090CS30

Edición 3.0

Noviembre de 2005

D50254

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 2: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Renuncia

Este documento contiene información propiedad de Oracle Corporation y se encuentra protegido por la legislación de derechos de autor y otras leyes sobre la propiedad intelectual. Usted sólo podrá realizar copias o imprimir este documento para uso exclusivo por usted en los cursos de formación de Oracle. Este documento no podrá ser modificado ni alterado en modo alguno. Salvo que la legislación 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 autorización expresa por parte de Oracle.

La información 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 documentación 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 RIGHTSThe U.S. Government’s rights to use, modify, reproduce, release, perform, display, or disclose these training materials are restricted by the terms of the applicable 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 demás nombres pueden ser marcas comerciales de sus respectivos propietarios.

AutoresTom BestM.J. Billings

Colaboradores y Revisores TécnicosAnthony WoodellBarry TruteCelia AntonioChristine JealDonna KeeslingHoward BradleyJames SpillerJanet SternJean-Francois VerrierJoel GoodmanJohn HibbardLarry BaumannMagnus IsakssonM.J. BryksaPaul NeedhamPierre LabrousseRaza SiddiquiSandra CheeversStefan LindbladStella KisterSteve FriedbergSteven KaramSushma JagannathTammy Bednar

RedactoresNavratan SinghNita PavitranRaj Kumar

Diseñadores GráficosSatish BettegowdaSteve Elwood

EditorJoseph Fernandez

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 3: Taller I DBA-Oracle 2

Prefacio

1 IntroducciónObjetivos del Curso 1-2Planificación Sugerida 1-3Objetivos 1-4Productos y Servicios Oracle 1-5Base de Datos Oracle 10g: “g” Significa Grid 1-6Arquitectura de la Base de Datos Oracle 1-8Estructuras de Bases de Datos 1-9Estructuras de Memoria de Oracle 1-10Estructuras de Proceso 1-12Gestión de Instancias de Oracle 1-13Proceso de Servidor y Caché de Buffers de la Base de Datos 1-14Estructura de Base de Datos Física 1-15Tablespaces y Archivos de Datos 1-17Tablespaces SYSTEM y SYSAUX 1-18Segmentos, Extensiones y Bloques 1-19Estructuras de Bases de Datos Físicas y Lógicas 1-20Ejemplos del Curso: Esquema HR 1-22Arquitectura de Base de Datos: Resumen de Componentes Estructurales 1-23Resumen 1-24

2 Instalación del Software de la Base de Datos OracleObjetivos 2-2Tareas de un Administrador de la Base de Datos Oracle 2-3Herramientas Utilizadas para Administrar Bases de Datos Oracle 2-4Instalación: Requisitos del Sistema 2-6Comprobación de los Requisitos del Sistema 2-7Arquitectura Flexible Óptima (OFA) 2-8Uso de la Arquitectura Flexible Óptima 2-9Definición de Variables de Entorno 2-11Oracle Universal Installer (OUI) 2-13Instalación del Software de Oracle 2-14Opciones de Configuración de Base de Datos 2-15Ejecución de Archivos de Comandos de Configuración 2-16Fin de la Instalación 2-17Opciones Avanzadas de Instalación 2-18Opción de Instalación: Modo Silencioso 2-19Resumen 2-20Visión General de la Práctica: Instalación del Software de Oracle 2-21

Contenido

iii

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 4: Taller I DBA-Oracle 2

3 Creación de una Base de Datos OracleObjetivos 3-2Planificación de la Base de Datos 3-3Bases de Datos: Ejemplos 3-4Asistente de Configuración de Bases de Datos (DBCA) 3-5Uso de DBCA para Crear una Base de Datos 3-6Password Management 3-12Creación de una Plantilla de Diseño de Bases de Datos 3-13Uso de DBCA para Suprimir una Base de Datos 3-14Resumen 3-16Visión General de la Práctica: Uso de DBCA 3-17

4 Gestión de la Instancia de OracleObjetivos 4-2Marco de Gestión 4-3Inicio y Parada de Database Control 4-4Oracle Enterprise Manager 4-5Acceso a Oracle Enterprise Manager 4-6Página Inicial de la Base de Datos 4-7Uso de SQL*Plus e iSQL*Plus para Acceder a las Bases de Datos 4-8Uso de iSQL*Plus 4-9Configuración de iSQL*Plus para el Acceso de SYSDBA y SYSOPER 4-10Uso de SQL*Plus 4-12Llamada a SQL*Plus desde un Archivo de Comandos del Shell 4-13Llamada a un Archivo de Comandos SQL desde SQL*Plus 4-14Archivos de Parámetros de Inicialización 4-15Parámetros de Inicialización Simplificados 4-16Visualización y Modificación de Parámetros de Inicialización 4-18Inicio y Cierre de la Base de Datos 4-19Inicio de una Instancia de Base de Datos Oracle 4-20Inicio de una Instancia de Base de Datos Oracle: NOMOUNT 4-21Inicio de una Instancia de Base de Datos Oracle: MOUNT 4-22Inicio de una Instancia de Base de Datos Oracle: OPEN 4-23Cierre de una Instancia de la Base de Datos Oracle 4-24Modos de Cierre 4-25Opciones de SHUTDOWN 4-26Uso de SQL*Plus para el Inicio y el Cierre 4-29Visualización del Log de Alertas 4-30Visualización del Historial de Alertas 4-31Vistas de Rendimiento Dinámico 4-32

iv

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 5: Taller I DBA-Oracle 2

Vistas de Rendimiento Dinámico: Ejemplos de Uso 4-33Vistas de Rendimiento Dinámico: Consideraciones 4-34Resumen 4-35Visión General de la Práctica: Gestión de la Instancia de Oracle 4-36

5 Gestión de Estructuras de Almacenamiento de Bases de DatosObjetivos 5-2Estructuras de Almacenamiento 5-3Almacenamiento de Datos de Tabla 5-4Anatomía de un Bloque de Base de Datos 5-5Tablespaces y Archivos de Datos 5-6Oracle Managed Files (OMF) 5-7Gestión de Espacio en Tablespaces 5-8Exploración de la Estructura de Almacenamiento 5-9Creación de un Nuevo Tablespace 5-10Almacenamiento de Tablespaces Gestionados Localmente 5-12Tablespaces en la Base de Datos Preconfigurada 5-14Modificación de un Tablespace 5-16Acciones con Tablespaces 5-19Borrado de Tablespaces 5-21Visualización de Información de Tablespaces 5-22Recopilación de Información de Almacenamiento 5-23Visualización de Contenido de Tablespaces 5-24Ampliación de la Base de Datos 5-25¿Qué es Gestión Automática de Almacenamiento? 5-26ASM: Funciones Clave y Ventajas 5-27ASM: Conceptos 5-28Resumen 5-29Visión General de la Práctica: Gestión de Estructuras de Almacenamiento

de Bases de Datos 5-30

6 Administración de Seguridad del UsuarioObjetivos 6-2Cuentas de Usuario de Base de Datos 6-3Cuentas Predefinidas: SYS y SYSTEM 6-5Creación de un Usuario 6-6Autenticación de Usuarios 6-7Autenticación de Administradores 6-9Desbloqueo de Cuentas de Usuario y Restablecimiento de Contraseñas 6-10Privilegios 6-11Privilegios del Sistema 6-12Privilegios de Objeto 6-14

v

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 6: Taller I DBA-Oracle 2

Revocación de Privilegios del Sistema con ADMIN OPTION 6-15Revocación de Privilegios de Objeto con GRANT OPTION 6-16Ventajas de los Roles 6-17Asignación de Privilegios a Roles y de Roles a Usuarios 6-18Roles Predefinidos 6-19Creación de un Rol 6-20Roles Seguros 6-21Asignación de Roles a Usuarios 6-22Perfiles y Usuarios 6-23Implementaciones de las Funciones de Seguridad con Contraseña 6-25Creación de un Perfil de Contraseña 6-27Función de Verificación de Contraseñas Proporcionadas: VERIFY_FUNCTION 6-28Asignación de Cuota a Usuarios 6-29Resumen 6-31Visión General de la Práctica: Administración de Usuarios 6-32

7 Gestión de Objetos de EsquemaObjetivos 7-2¿Qué es un Esquema? 7-3Acceso a Objetos de Esquema 7-5Nomenclatura de Objetos de Base de Datos 7-6Especificación de Tipos de Dato en Tablas 7-8Creación y Modificación de Tablas 7-11Descripción de la Integridad de los Datos 7-13Definición de Restricciones 7-15Violaciones de Restricciones 7-16Estados de Restricciones 7-17Comprobación de Restricciones 7-19Creación de Restricciones con SQL: Ejemplos 7-20Visualización de las Columnas de una Tabla 7-21Visualización del Contenido de una Tabla 7-22Acciones con Tablas 7-23Borrado de una Tabla 7-24Truncamiento de una Tabla 7-25Índices 7-26Tipos de Índices 7-27Índice de Árbol B 7-28Índices de Bitmap 7-30Opciones de Índice 7-32Creación de Índices 7-34

vi

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 7: Taller I DBA-Oracle 2

¿Qué es una Vista? 7-35Creación de Vistas 7-36Secuencias 7-37Creación de una Secuencia 7-38Uso de una Secuencia 7-40Tablas Temporales 7-41Tablas Temporales: Consideraciones 7-43Diccionario de Datos: Visión General 7-44Vistas del Diccionario de Datos 7-45Diccionario de Datos: Ejemplos de Uso 7-47Resumen 7-48Visión General de la Práctica: Administración de Objetos de Esquema 7-49

8 Gestión de Datos y SimultaneidadObjetivos 8-2Manipulación de Datos mediante SQL 8-3Comando INSERT 8-4Comando UPDATE 8-5Comando DELETE 8-6Comando MERGE 8-7Comandos COMMIT y ROLLBACK 8-9PL/SQL 8-10Administración de Objetos PL/SQL 8-12Objetos PL/SQL 8-13Funciones 8-14Procedimientos 8-15Paquetes 8-16Especificación y Cuerpo del Paquete 8-17Paquetes Incorporados 8-18Disparadores 8-19Eventos Disparadores 8-20Bloqueos 8-21Mecanismo de Bloqueo 8-22Simultaneidad de Datos 8-23Bloqueos de DML 8-25Mecanismo de Puesta en Cola 8-26Conflictos de Bloqueo 8-27Posibles Causas de Conflictos de Bloqueo 8-28Detección de Conflictos de Bloqueo 8-29Resolución de Conflictos de Bloqueo 8-30

vii

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 8: Taller I DBA-Oracle 2

Resolución de Conflictos de Bloqueo mediante SQL 8-31Interbloqueos 8-32Resumen 8-33Visión General de la Práctica: Gestión de Datos y Simultaneidad 8-34

9 Gestión de Datos de DeshacerObjetivos 9-2Manipulación de Datos 9-3Datos de Deshacer 9-4Transacciones y Datos de Deshacer 9-6Almacenamiento de Información de Deshacer 9-7Datos de Deshacer frente a Datos de Redo 9-8Control de Deshacer 9-9Administración de Deshacer 9-11Configuración de Retención de Deshacer 9-12Garantía de Retención de Deshacer 9-14Tamaño de los Tablespaces de Deshacer 9-15Uso del Asesor de Deshacer 9-16Resumen 9-17Visión General de la Práctica: Gestión de Segmentos de Deshacer 9-18

10 Implementación de Seguridad de la Base de Datos OracleObjetivos 10-2Requisitos de Seguridad de la Industria 10-3Separación de Responsabilidades 10-5Seguridad de la Base de Datos 10-6Principio de Privilegio más Bajo 10-8Aplicación del Principio de Privilegio Más Bajo 10-9Control de Actividades Sospechosas 10-11Auditoría de la Base de Datos Estándar 10-12Activación de Auditoría 10-13Pistas de Auditoría Uniformes 10-14Página de Auditoría de Enterprise Manager 10-16Especificación de Opciones de Auditoría 10-17Uso y Mantenimiento de la Información de Auditoría 10-18Auditoría Basada en Valores 10-19Auditoría Detallada 10-21Política de FGA 10-22Sentencia DML Auditada: Consideraciones 10-24Instrucciones de FGA 10-25Auditoría de DBA 10-26

viii

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 9: Taller I DBA-Oracle 2

Mantenimiento de la Pista de Auditoría 10-27Actualizaciones de Seguridad 10-28Aplicación de Parches de Seguridad 10-29Resumen 10-30Visión General de la Práctica: Implementación de Seguridad de la Base de Datos Oracle 10-31

11 Configuración del Entorno de Red de OracleObjetivos 11-2Servicios de Red de Oracle 11-3Listener de Red de Oracle 11-4Establecimiento de Conexiones de Red 11-5Establecimiento de una Conexión 11-6Sesiones de Usuario 11-7Herramientas para Configurar y Gestionar la Red de Oracle 11-8Utilidad Listener Control 11-9Sintaxis de la Utilidad Listener Control 11-10Página Inicial del Listener 11-12Página Net Services Administration 11-13Creación de un Listener 11-14Adición de Direcciones de Listener 11-15Registro de Servicio de Base de Datos 11-16Métodos de Nomenclatura 11-17Conexión Sencilla 11-18Nomenclatura Local 11-19Nomenclatura de Directorios 11-20Método de Nomenclatura Externa 11-21Configuración de Alias de Servicio 11-22Opciones de Conexión Avanzada 11-23Prueba de la Conectividad de Red de Oracle 11-25Sesiones de Usuario: Servidor Dedicado 11-26Sesiones de Usuario: Servidor Compartido 11-27SGA y PGA 11-28Servidor Compartido: Pool de Conexiones 11-29Cuándo No se Debe Utilizar un Servidor Compartido 11-30Resumen 11-31Visión General de la Práctica: Trabajar con los Componentes de Red de Oracle 11-32

12 Mantenimiento ProactivoObjetivos 12-2Mantenimiento Proactivo 12-3Introducción a la Terminología 12-4

ix

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 10: Taller I DBA-Oracle 2

Estadísticas del Optimizador 12-5Uso de la Página Manage Optimizer Statistics 12-7Niveles de Estadísticas 12-9Repositorio de Carga de Trabajo Automática (AWR) 12-10Infraestructura de AWR 12-11Juegos de Instantáneas AWR 12-12Enterprise Manager y AWR 12-13Gestión de AWR 12-14Monitor de Diagnóstico de Base de Datos Automático (ADDM) 12-15Resultados de ADDM 12-16Recomendaciones de ADDM 12-17Marco de Asesoramiento 12-18Enterprise Manager y Asesores 12-20Paquete DBMS_ADVISOR 12-21Alertas Generadas por el Servidor 12-22Alertas Generadas por el Servidor por Defecto 12-23Definición de Umbrales 12-24Creación y Prueba de una Alerta 12-25Notificación de Alertas 12-26Reacción ante Alertas 12-28Tipos de Alerta y Eliminación de Alertas 12-29Tareas de Mantenimiento Automáticas 12-30Resumen 12-31Visión General de la Práctica: Mantenimiento Proactivo 12-32

13 Gestión de RendimientoObjetivos 13-2Control del Rendimiento 13-3Control del Rendimiento: Top Sessions 13-7Control del Rendimiento: Top Services 13-8Asesor de Ajustes SQL: Visión General 13-9Recomendaciones y Opciones del Asesor de Ajustes SQL 13-10Uso del Asesor de Ajustes SQL 13-11Uso del Asesor de Ajustes SQL: Ejemplo 13-12Asesor de Ajustes SQL: Estadísticas SQL 13-13Asesor de Ajustes SQL: Identificación de SQL Duplicados 13-14Uso del Asesor de Acceso SQL 13-15Gestión de los Componentes de la Memoria 13-17Activación de la Gestión Automática de Memoria Compartida (ASMM) 13-18Definición Manual de la Gestión de Memoria Compartida 13-20

x

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 11: Taller I DBA-Oracle 2

Uso del Asesor de Memoria 13-21Estadísticas de Rendimiento Dinámicas 13-22Vistas de Solución de Problemas y de Ajustes 13-24Objetos No Válidos o No Utilizables 13-25Resumen 13-27Visión General de la Práctica: Control y Mejora del Rendimiento 13-28

14 Conceptos de Copia de Seguridad y RecuperaciónObjetivos 14-2Parte de su Trabajo 14-3Categorías de Fallos 14-4Fallo de Sentencia 14-5Fallo de Proceso de Usuario 14-6Fallo de Red 14-7Error del Usuario 14-8Fallo de la Instancia 14-10Procesos en Segundo Plano y Recuperación: Punto de Control (CKPT) 14-11Procesos en Segundo Plano y Recuperación: Archivos Redo Log y Escritor de Log 14-13Procesos en Segundo Plano y Recuperación: Proceso de Archivado (ARCn) 14-14Recuperación de Instancias 14-15Fases de la Recuperación de Instancias 14-16Ajuste de la Recuperación de Instancias 14-17Uso del Asesor de MTTR 14-18Fallo del Medio Físico 14-19Configuración de Recuperabilidad 14-20Archivos de Control 14-21Archivos Redo Log 14-22Multiplexión del Redo Log 14-23Archivos Archive Log 14-24Archivo Archive Log: Nomenclatura y Destinos 14-25Modo ARCHIVELOG 14-27Resumen 14-28Visión General de la Práctica: Configuración de Recuperabilidad 14-29

15 Realización de Copias de Seguridad de Bases de DatosObjetivos 15-2Soluciones de Copia de Seguridad: Visión General 15-3Oracle Secure Backup 15-4Copia de Seguridad Gestionada por Usuario 15-5Terminología 15-6Recovery Manager (RMAN) 15-10

xi

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 12: Taller I DBA-Oracle 2

Configuración de Valores de Copia de Seguridad 15-11Planificación de Copias de Seguridad: Estrategia 15-14Planificación de Copias de Seguridad: Options 15-15Planificación de Copias de Seguridad: Settings 15-16Planificación de Copias de Seguridad: Schedule 15-17Planificación de Copias de Seguridad: Review 15-18Copia de Seguridad del Archivo de Control en un Archivo de Rastreo 15-19Gestión de Copias de Seguridad 15-21Área de Recuperación de Flash 15-22Resumen 15-23Visión General de la Práctica: Creación de Copias de Seguridad de Bases de Datos 15-24

16 Recuperación de Bases de DatosObjetivos 16-2Apertura de una Base de Datos 16-3Cambio del Estado de la Instancia 16-5Mantenimiento de una Base de Datos Abierta 16-6Pérdida de un Archivo de Control 16-7Pérdida de un Archivo Redo Log 16-8Pérdida de un Archivo de Datos en Modo NOARCHIVELOG 16-9Pérdida de un Archivo de Datos No Crítico en Modo ARCHIVELOG 16-10Pérdida de un Archivo de Datos Crítico del Sistema en Modo ARCHIVELOG 16-11Resumen 16-12Visión General de la Práctica: Recuperación de Bases de Datos 16-13

17 Realización de FlashbackObjetivos 17-2Tecnología de Flashback: Ventajas 17-3Cuándo Utilizar la Tecnología de Flashback 17-4Realización de Flashback en Cualquier Error 17-5Flashback de Base de Datos: Visión General 17-6Flashback de Base de Datos: Reducción del Tiempo de Restauración 17-7Flashback de Base de Datos: Consideraciones 17-8Flashback de Base de Datos: Limitaciones 17-9Activación de la Función de Flashback de Base de Datos 17-10Flashback de Tabla: Visión General 17-11Flashback de Tabla 17-12Activación del Movimiento de Filas en una Tabla 17-13Realización de Flashback de Tabla 17-14Flashback de Tabla: Consideraciones 17-15Flashback de Borrado: Visión General 17-17

xii

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 13: Taller I DBA-Oracle 2

Flashback de Tablas Borradas mediante Enterprise Manager 17-18Flashback de Borrado: Consideraciones 17-19Acceso al Tiempo de Flashback 17-20Consulta de Flashback: Visión General 17-21Consulta de Flashback: Ejemplo 17-22Consulta de Flashback de Versiones: Visión General 17-23Consulta de Flashback de Versiones mediante Enterprise Manager 17-24Consulta de Flashback de Versiones: Consideraciones 17-25Consulta de Flashback de Transacciones: Visión General 17-26Consulta de Flashback de Transacciones mediante Enterprise Manager 17-27Consulta de Flashback de Transacciones: Consideraciones 17-28Resumen 17-29Visión General de la Práctica: Uso de Flashback 17-30

18 Movimiento de DatosObjetivos 18-2Movimiento de Datos: Arquitectura General 18-3Objeto de Directorio: Visión General 18-4Creación de Objetos de Directorio 18-5SQL*Loader: Visión General 18-6Carga de Datos con SQL*Loader 18-8Archivo de Control de SQL*Loader 18-9Métodos de Carga 18-11Pump de Datos: Visión General 18-13Pump de Datos: Ventajas 18-15Exportación e Importación de Pump de Datos: Visión General 18-17Utilidad Pump de Datos: Interfaces y Modos 18-18Selección de Objetos Detallada 18-19Función Avanzada: Creación de Ejemplos 18-20Opciones de Exportación: Archivos 18-21Ubicaciones de los Archivos de Pump de Datos 18-22Planificación y Ejecución de un Trabajo 18-24Nomenclatura y Tamaño de los Archivos de Pump de Datos 18-25Importación de Pump de Datos 18-26Importación de Pump de Datos: Transformaciones 18-27Pump de Datos: Consideración del Rendimiento 18-29Parámetros de Inicialización de Rendimiento 18-30Rutas de Acceso de Pump de Datos: Consideraciones 18-31Uso de Enterprise Manager para Controlar Trabajos de Pump de Datos 18-32Relleno de Tabla Externa 18-33

xiii

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 14: Taller I DBA-Oracle 2

Uso de Tablas Externas 18-34Relleno de Tabla Externa mediante ORACLE_DATAPUMP 18-35Relleno de Tabla Externa mediante ORACLE_LOADER 18-36Diccionario de Datos 18-37Resumen 18-38Visión General de la Práctica: Movimiento de Datos 18-39

Apéndice A: Prácticas

Apéndice B: Soluciones

Apéndice C: Comandos Básicos de Linux y vi

Apéndice D: Sintaxis de Sentencias SQL

Apéndice E: Acrónimos y Términos

Apéndice F: Siguientes Pasos para Continuar con la Formación

Índice

xiv

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 15: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Configuración del Entorno de Red de Oracle

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 16: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para:• Utilizar Enterprise Manager para:

– Crear listeners adicionales– Crear alias de servicio de Red de Oracle– Configurar operaciones de failover de tiempo de

conexión– Controlar el listener de Red de Oracle

• Utilizar tnsping para realizar pruebas de la conectividad de Red de Oracle

• Identificar cuándo se deben utilizar servidores compartidos frente a servidores dedicados

Recursos• Oracle Database, Net Services Administrator’s Guide, 10g Release 2 (10.2), número de

artículo B14212-01• Oracle Database, Net Services Reference, 10g Release 2 (10.2), número de artículo

B14213-01

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 17: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Servicios de Red de Oracle

Aplicación

Red de Oracle

RDBMS

Red de Oracle

Cliente o capa media

Servidor de bases de datos

Red TCP/IP

Listener

Archivos de configuraciónde Red de Oracle

Archivos de configuraciónde Red de Oracle

Servicios de Red de OracleLos servicios de Red de Oracle activan conexiones de red de una aplicación de cliente o de capa media al servidor de Oracle. Una vez que se ha establecido una sesión de red, la Red de Oracle actúa como servicio de mensajería de datos tanto para la aplicación cliente como para el servidor de bases de datos. Es responsable de establecer y mantener la conexión entre la aplicación cliente y el servidor de bases de datos, así como de intercambiar mensajes entre ambos. La Red de Oracle, o lo que simule la Red de Oracle, como Java Database Connectivity (JDBC), estáubicada en cada computadora que necesite hablar con el servidor de bases de datos. En la computadora cliente, la Red de Oracle es un componente en segundo plano para conectar aplicaciones a la base de datos. En el servidor de bases de datos, la Red de Oracle incluye un proceso activo denominado listener. El listener de Red de Oracle es responsable de coordinar conexiones entre la base de datos y las aplicaciones externas. El uso más común de los servicios de Red de Oracle es permitir conexiones de base de datos entrantes. Puede configurar servicios de red adicionales para permitir el acceso a bibliotecas de código externo (EXTPROC) y conectar la instancia de Oracle a orígenes de datos que no sean de Oracle, como Sybase, Informix, DB2 y SQL Server, mediante los Servicios Heterogéneos de Oracle.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 18: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Listener de Red de Oracle

Listener

<oracle_home>/network/admin/listener.orasqlnet.ora

Bases de datos Oracle

Archivos de configuraciónde Red de Oracle

EnterpriseManagerDatabaseControl

Listener de Red de OracleEl listener de Red de Oracle es el gateway a la instancia de Oracle para todas las conexiones de usuario no locales. Un único listener puede ocuparse de varias instancias de la base de datos y de miles de conexiones del cliente.Una de las maneras de acceder al listener es a través de Enterprise Manager. Puede controlar la configuración del listener real así como los parámetros generales, como la protección por contraseña y las ubicaciones de archivos log.Los administradores avanzados también pueden configurar los servicios de Red de Oracle editando manualmente los archivos de configuración con un editor de texto del sistema operativo estándar, como vi o gedit, si es necesario.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 19: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Establecimiento de Conexiones de Red

Para realizar una conexión de cliente o capa media, la Red de Oracle necesita que el cliente conozca lo siguiente:• Host en el que se ejecuta el listener• Puerto que controla el listener• Protocolo que utiliza el listener• Nombre del servicio que maneja el listener

Resolución de Nombres

Establecimiento de Conexiones de RedPara que una aplicación se conecte a un servicio a través de un listener de Red de Oracle, la aplicación debe tener información sobre dicho servicio, incluida la dirección o el host donde reside el listener, el protocolo que acepta el listener y el puerto que controla el listener. Una vez localizado el listener, la parte final de información que necesita la aplicación es el nombre del servicio al que desea conectarse.El proceso de determinar esta información de conexión se denomina “resolución de nombres”.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 20: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-6

Copyright © 2005, Oracle. Todos los derechos reservados.

Listener

Establecimiento de una Conexión

Solicitud deconexión entrante

Establecimiento de una ConexiónUna vez que termina la resolución de nombres de Red de Oracle, se transfiere una solicitud de conexión de la aplicación de usuario o de capa media (denominada proceso de usuario en adelante) al listener de Red de Oracle. El listener recibe un paquete CONNECT y comprueba si dicho paquete CONNECT está solicitando un nombre de servicio de Red de Oracle válido.Si no se solicita el nombre del servicio (como en el caso de una solicitud tnsping), el listener reconoce la solicitud de conexión y no hace nada. Si se solicita un nombre de servicio no válido, el listener transmite un código de error al proceso de usuario.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 21: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-7

Copyright © 2005, Oracle. Todos los derechos reservados.

Proceso de servidor

Sesiones de Usuario

PGA

Listener

Sesión de usuario

Proceso de usuario

Sesiones de UsuarioSi el paquete CONNECT solicita un nombre de servicio válido, el listener origina un nuevo proceso para que se ocupe de la conexión. Este nuevo proceso se conoce como “proceso de servidor”. El listener conecta con el proceso y le transfiere información de inicialización, incluida la información de dirección para el proceso de usuario. En este punto, el listener ya no se ocupa de la conexión y todo el trabajo se transfiere al proceso de servidor.El proceso de servidor comprueba las credenciales de autenticación del usuario (normalmente una contraseña) y, si las credenciales son válidas, se crea una sesión de usuario.Proceso de servidor dedicado: Con la sesión establecida, el proceso de servidor actúa ahora como el agente del usuario en el servidor. El proceso de servidor es responsable de:

• Analizar y ejecutar las sentencias SQL emitidas a través de la aplicación.• Comprobar si en la caché de buffers de la base de datos hay bloques de datos que necesitan

llevar a cabo sentencias SQL.• Leer bloques de datos necesarios de archivos de datos en disco en la parte de caché de

buffers de la base de datos del Área Global del Sistema (SGA), si los bloques no están ya en el SGA.

• Gestionar toda la actividad de ordenación. Una parte del proceso de servidor denominado Área Global de Programa (PGA) contiene un área de memoria denominada área de ordenación que se utiliza para trabajar con ordenación.

• Devolver resultados al proceso de usuario de modo que la aplicación pueda procesar la información.

• Leer las opciones de auditoria e informar de los procesos de usuario al destino de auditoria.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 22: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Herramientas para Configurar y Gestionar la Red de Oracle

• Página Net Services Administration de Enterprise Manager

• Oracle Net Manager• Oracle Net Configuration Assistant que ejecuta

Oracle Universal Installer• Línea de comandos

Herramientas para Configurar y Gestionar la Red de OraclePuede utilizar cualquiera de las siguientes herramientas para gestionar su configuración de Red de Oracle:

• Enterprise Manager: Proporciona un entorno integrado para configurar y gestionar servicios de Red de Oracle. Utilice Enterprise Manager para configurar los servicios de Red de Oracle para cualquier directorio raíz de Oracle en varios sistemas de archivos y para administrar listeners.

• Oracle Net Manager: Ofrece una interfaz gráfica de usuario (GUI) que permite configurar servicios de Red de Oracle para un directorio raíz de Oracle en un cliente local o en un host de servidor.

• Oracle Net Configuration Assistant: Lo ejecuta Oracle Universal Installer cuando se instala el software de Oracle. Oracle Net Configuration Assistant permite configurar la dirección de protocolo de recepción y la información de servicios de una base de datos Oracle.

• Línea de comandos: Se utiliza para iniciar, parar y visualizar el estado del proceso de listener. Se trata de un usuario del sistema operativo (en clase, oracle) que inicia o para el listener. Si no se inicia el listener, no se podrá utilizar Enterprise Manager.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 23: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-9

Copyright © 2005, Oracle. Todos los derechos reservados.

Utilidad Listener Control

Los listeners de Red de Oracle se pueden controlar con la utilidad de línea de comandos lsnrctl(o desde EM).

$lsnrctl

LSNRCTL for Linux: Version 10.2.0.0.0 on 12-MAY-2005 13:27:51

Copyright (c) 1991, 2004, Oracle. All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> help

The following operations are available

An asterisk (*) denotes a modifier or extended command:

start stop status

services version reload

save_config trace spawn

change_password quit exit

set* show*

Utilidad Listener ControlCuando se inicia una instancia, un proceso del listener establece una vía de comunicación con la base de datos Oracle. A continuación, el listener podrá aceptar las solicitudes de conexión de base de datos.La utilidad Listener Control permite controlar el listener. Con lsnrctl, puede:

• Iniciar el listener• Parar el listener• Comprobar el estado del listener• Reinicializar el listener a partir de los parámetros del archivo de configuración• Configurar dinámicamente muchos listeners• Cambiar la contraseña del listener

La sintaxis de comandos básica para esta utilidad es la siguiente:LSNRCTL> command [nombre_listener]

Cuando se emite el comando lsnrctl, el comando actúa en el listener por defecto (con nombre “LISTENER”) a menos que se especifique un nombre de listener distinto o se ejecute el comando SET CURRENT_LISTENER. Si el nombre del listener es LISTENER, el argumento nombre_listener se puede omitir.Los comandos válidos para lsnrctl se muestran en la diapositiva.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 24: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Sintaxis de la Utilidad Listener Control

Los comandos de la utilidad de control del listener se pueden emitir desde la línea de comandos o desde el prompt LSNRCTL.• Sintaxis de línea de comandos de UNIX o Linux:

• Sintaxis de prompt:

$ lsnrctl <nombre_comando>

$ lsnrctl start

$ lsnrctl status

LSNRCTL> <nombre_comando>

LSNRCTL> start

LSNRCTL> status

Sintaxis de la Utilidad Listener ControlLos comandos lsnrctl se pueden emitir desde la utilidad (sintaxis de prompt) o desde la línea de comandos. Los dos comandos siguientes tienen el mismo efecto. Primero, utilizando la sintaxis de línea de comandos:

$ lsnrctl start

y, a continuación, utilizando la sintaxis de prompt:$ lsnrctlLSNRCTL for Linux: Version 10.2.0.0.0 on 12-MAY-2005 Copyright (c) 1991, 2004, Oracle. All rights reserved.Welcome to LSNRCTL, type "help" for information.LSNRCTL> start

Normalmente, la sintaxis de línea de comandos se utiliza para ejecutar un comando individual o comandos de archivos de comandos. Si desea ejecutar varios comandos de lsnrctlconsecutivos, la sintaxis de prompt es la más eficaz. Observe que se ha omitido el argumento listener_name, por lo que el comando de parada afectaría al listener denominado LISTENER. La sintaxis de prompt se debe utilizar si el listener está protegido por contraseña.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 25: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-11

Sintaxis de la Utilidad Listener Control (continuación)Recuerde que si el listener tiene un nombre distinto de LISTENER, debe incluir el nombre del name con el comando o utilizar el comando SET CURRENT_LISTENER. Por ejemplo, el listener se llama BACKUP. A continuación, aparecen dos ejemplos de cómo se para un listener con nombre BACKUP mediante la sintaxis de prompt:

LSNRCTL> stop backupConnecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=rhel)(PORT=5521)))The command completed successfully

El resultado del ejemplo sería el mismo que el del siguiente:LSNRCTL> set cur backupCurrent Listener is backupLSNRCTL> stopConnecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=rhel)(PORT=5521)))The command completed successfully

Nota: En la sintaxis anterior, current_listener se puede abreviar como cur.También puede lograr los mismos resultados con la sintaxis de línea de comandos:

/home/oracle> lsnrctl stop backupLSNRCTL for Linux:Version 10.2.0.0.0 on 12-MAY-2005 15:19:33Copyright (c) 1991, 2004, Oracle. All rights reserved.Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=rhel)(PORT=5521)))The command completed successfully

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 26: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-12

Copyright © 2005, Oracle. Todos los derechos reservados.

Página Inicial del Listener

Página Inicial del ListenerHaga clic en el enlace Listener de la página inicial de la base de datos Enterprise Manager para acceder a la página inicial del listener.En esta página se puede ver:

• El estado y la disponibilidad del listener en las últimas 24 horas• La versión del listener y el directorio raíz de Oracle• La primera dirección de recepción para el listener• La ubicación de los archivos de configuración que se utilizan para iniciar el listener• La hora de inicio del listener y la información del host

Para iniciar el listener, vaya a la página inicial de la base de datos y haga clic en el nombre del listener para abrir la página inicial del listener. Haga clic en Stop para parar el listener si se estáejecutando o en Start para iniciar el listener si no se está ejecutando. Conéctese al host como usuario del sistema operativo que puede iniciar y parar el listener.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 27: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Página Net Services Administration

Página Net Services AdministrationLa página Net Services Administration le permitirá configurar los servicios de Red de Oracle para cualquier directorio raíz de Oracle en varios sistemas de archivos. También proporciona funciones de administración comunes para los listeners. Puede utilizar Net Services Administration para configurar y administrar lo siguiente:

• Listeners: Puede agregar, eliminar, iniciar y parar un listener, así como cambiar las características de rastreo y de registro. También puede ver el informe de estado de control de un listener.

• Directory Naming: Defina nombres simples e identificadores de conexión y asígnelos a descriptores de conexión para identificar la ubicación de la red y la identificación de un servicio. Guarde los servicios de base de datos, servicios de red y alias de servicio de red en un servicio de directorio centralizado.

• Local Naming: Guarde los nombres de servicio de red en el archivo tnsnames.ora.• Profile: Configure los parámetros sqlnet.ora.• File Location: Cambie la ubicación de los archivos de configuración de los servicios de

red.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 28: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-14

Copyright © 2005, Oracle. Todos los derechos reservados.

Creación de un Listener

1

2

34

Creación de un ListenerPara crear un listener de Red de Oracle, haga clic en Net Services Administration en la región Related Links de la página de propiedades del listener. Realice los siguientes pasos:

1. Seleccione Listeners de la lista desplegable Administer y haga clic en Go.2. Haga clic en Create.3. Introduzca un nombre de listener. El nombre debe ser único para este servidor.4. Agregue una dirección de listener. Cada listener debe tener al menos una dirección de

listener.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 29: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Adición de Direcciones de Listener

56

7

Adición de Direcciones de ListenerEl flujo de trabajo para crear un listener continúa:

5. Seleccione el protocolo de red. TCP/IP es el más utilizado y el protocolo por defecto. Otras opciones son Comunicación Interna entre Procesos (IPC), utilizada normalmente para conectar a aplicaciones locales (que residen en el servidor de bases de datos), o bibliotecas de código externo (EXTPROC), Named Pipes (NMP) y TCP/IP con SSL.Nota: Los protocolos NMP y EXTPROC se configuran utilizando el separador Other Services.

6. Introduzca el puerto que desea que controle el listener. El puerto por defecto de Red de Oracle es el 1521. Si decide utilizar un puerto que no sea el 1521, necesitará realizar una configuración adicional del listener o de la instancia.

7. Introduzca el nombre o la dirección IP del servidor en el que se ejecutará el listener.8. Los demás pasos de configuración son opcionales para el listener. Haga clic en OK para

guardar la dirección. La única configuración necesaria es la dirección de recepción y el nombre. Haga clic en OK para guardar los cambios.

9. Para iniciar el nuevo listener, seleccione Start/Stop de la lista desplegable Actions y haga clic en Go.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 30: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-16

Copyright © 2005, Oracle. Todos los derechos reservados.

Registro de Servicio de Base de Datos

Registro de Servicio de Base de DatosPara que un listener reenvíe conexiones del cliente a una instancia, éste debe conocer el nombre de la instancia y el lugar donde está ubicado el directorio ORACLE_HOME de la instancia. El listener puede buscar esta información de dos formas:

• Registro de servicio dinámico: Las instancias de la base de datos Oracle8i, Oracle9i y Oracle 10g se registran automáticamente con el listener por defecto al iniciar la base de datos. No es necesario realizar ninguna configuración adicional en el listener por defecto.

• Registro de servicio estático: Las versiones anteriores de la base de datos Oracle no se registran automáticamente con el listener y, por tanto, necesitan que el archivo de configuración del listener contenga una lista de todos los servicios de base de datos de los que se ocupará el listener. Aún puede utilizar el registro de servicio estático con versiones más recientes si:

- El listener no está en el puerto por defecto 1521 y no desea configurar la instancia para que se registre con un puerto que no sea por defecto.

- La aplicación necesita un registro de servicio estático.Para agregar un servicio de base de datos estático, seleccione Static Database Registration en la página Edit Listener y haga clic en el botón Add. Introduzca el nombre del servicio (el mismo que el nombre de la base de datos global <DB_NAME>.<DB_DOMAIN>), la ruta de acceso ORACLE_HOME y el SID (el mismo que el nombre de la instancia). Haga clic en OK. Deberáreiniciar el listener para que se apliquen los cambios.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 31: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Métodos de Nomenclatura

La Red de Oracle soporta varios métodos para resolver la información de conexión:• Nomenclatura de conexión sencilla: Utiliza una

cadena de conexión TCP/IP• Nomenclatura local: Utiliza un archivo de

configuración local• Nomenclatura de directorios: Utiliza un servidor

de directorios compatible con LDAP centralizado• Nomenclatura externa: Utiliza un servicio de

nomenclatura soportado que no es de Oracle

Cliente/servidor de aplicacionesRed de Oracle

Archivos de configuración de Red de Oracle

Métodos de NomenclaturaLa Red de Oracle soporta los siguientes métodos de nomenclatura:

• Nomenclatura de conexión sencilla: El método de nomenclatura de conexión sencilla permite a los clientes conectarse a un servidor de base de datos Oracle mediante una cadena de conexión TCP/IP formada por un nombre de host, un puerto opcional y un nombre de servicio, como en el siguiente ejemplo:

CONNECT username/password@host[:port][/service_name] El método de nomenclatura de conexión sencilla no exige ninguna configuración.

• Nomenclatura local: El método de nomenclatura local almacena descriptores de conexión que se identifican por su nombre de servicio de red en un archivo de configuración en el cliente denominado tnsnames.ora.

• Nomenclatura de directorios: El método de nomenclatura de directorios almacena identificadores de conexión en un servidor de directorios compatible con Lightweight Directory Access Protocol (LDAP) centralizado para acceder a un servicio de base de datos.

• Nomenclatura externa: El método de nomenclatura externa almacena nombres de servicios de red en un servicio de nomenclatura no de Oracle soportado. Los servicios de terceros soportados incluyen:

- Nomenclatura Externa de Servicios de Información de Red (NIS)- Servicio de Directorio de Celdas (CDS) del entorno Distributed Computing

Environment (DCE)

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 32: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Conexión Sencilla

• Activada por defecto• No necesita configuración del cliente• Soporta sólo TCP/IP (no SSL)• No ofrece soporte para opciones de conexión

avanzadas como:– Operación de failover de tiempo de conexión– Direccionamiento de origen– Equilibrio de carga

SQL> CONNECT hr/[email protected]:1521/dba10g

Archivos de configuración que no son de Red de Oracle

Conexión SencillaCon la conexión sencilla, se proporciona toda la información necesaria para la conexión de Red de Oracle como parte de la cadena de conexión. Las cadenas de conexión sencilla tienen el siguiente formato:

<nombre_usuario>/<contraseña>@<nombre_host>:<puerto_listener>/ <nombre_servicio>

El puerto del listener y el nombre del servicio son opcionales. Si no se proporciona el puerto del listener, la Red de Oracle asume que se utiliza el puerto por defecto 1521. Si no se proporciona el nombre del servicio, la Red de Oracle asume que el nombre del servicio de la base de datos y el nombre del host proporcionado en la cadena de conexión son idénticos.Si el listener utilizara el protocolo TCP para recibir en el puerto 1521 y los parámetros de instancia SERVICE_NAMES=db y DB_DOMAIN=us.oracle., la cadena de conexión que aparece en la diapositiva se podría reducir a:

SQL> connect hr/[email protected]

Nota: El parámetro de inicialización SERVICE_NAMES puede aceptar varios valores separados por comas. Sólo uno de dichos valores debe ser db para que este supuesto funcione.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 33: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-19

Copyright © 2005, Oracle. Todos los derechos reservados.

Nomenclatura Local

• Necesita un archivo de resolución de nombres del cliente

• Soporta todos los protocolos de Red de Oracle• Soporta opciones de conexión avanzada como:

– Operación de failover de tiempo de conexión– Direccionamiento de origen– Equilibrio de carga

SQL> CONNECT hr/hr@orcl

Archivos de configuraciónde Red de Oracle

Nomenclatura LocalCon la nomenclatura local, el usuario proporciona un alias para el servicio de Red de Oracle. La Red de Oracle comprueba el alias en una lista local de servicios conocidos y, si encuentra una coincidencia, convierte el alias en nombre de host, protocolo, puerto y servicio.Una ventaja de la nomenclatura local es que los usuarios de la base de datos sólo necesitan recordar un alias corto en lugar de la cadena de conexión larga que necesita la conexión sencilla.La lista local de servicios conocidos se almacena en el archivo de configuración de texto: <oracle_home>/network/admin/tnsnames.ora. Ésta es la ubicación por defecto del archivo tnsnames.ora, pero el archivo puede estar ubicado en alguna otra parte utilizando la variable de entorno TNS_ADMIN.La nomenclatura local es adecuada para organizaciones en las que las configuraciones del servicio de Red de Oracle no cambian con frecuencia.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 34: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-20

Copyright © 2005, Oracle. Todos los derechos reservados.

Nomenclatura de Directorios

• Necesita tener cargado LDAP con información de resolución de nombres de Red de Oracle:– Oracle Internet Directory– Servicios de Active Directory de Microsoft

• Soporta todos los protocolos de Red de Oracle• Soporta opciones de conexión avanzada

SQL> CONNECT hr/hr@orcl

Directorio LDAP

Archivos de configuraciónde Red de Oracle

Nomenclatura de DirectoriosCon la nomenclatura de directorios, el usuario proporciona un alias para el servicio de Red de Oracle. La Red de Oracle comprueba el alias en una lista externa de servicios conocidos y, si encuentra una coincidencia, convierte el alias en nombre de host, protocolo, puerto y servicio. Al igual que la nomenclatura local, los usuarios de la base de datos sólo deben recordar un alias corto.Una ventaja de la nomenclatura de directorios es que en cuanto se agrega un nuevo nombre de servicio al directorio LDAP, el nombre del servicio está disponible para que los usuarios se conecten con él. Con la nomenclatura local, el administrador de la base de datos (DBA) debe distribuir primero los archivos tnsnames.ora actualizados que contengan la información del nombre del servicio cambiado para que los usuarios se puedan conectar a los servicios nuevos o modificados.La nomenclatura de directorios es adecuada para organizaciones en las que las configuraciones del servicio de Red de Oracle cambian con frecuencia.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 35: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Método de Nomenclatura Externa

• Utiliza un servicio de nomenclatura soportado que no es de Oracle

• Incluye:– Nomenclatura Externa de Servicios de Información

de Red (NIS)– Servicio de Directorio de Celdas (CDS) del entorno

Distributed Computing Environment (DCE)

Red de Oracle

Servicio de nomenclatura que no es de Oracle

Método de Nomenclatura ExternaEl método de nomenclatura externa almacena nombres de servicios de red en un servicio de nomenclatura no de Oracle soportado. Los servicios de terceros soportados incluyen:

• Nomenclatura Externa de Servicios de Información de Red (NIS)• Servicio de Directorio de Celdas (CDS) del entorno Distributed Computing Environment

(DCE)Conceptualmente, la nomenclatura externa es parecida a la de directorios.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 36: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-22

Copyright © 2005, Oracle. Todos los derechos reservados.

Configuración de Alias de Servicio

Crear oeditar

Configuración de Alias de ServicioPara crear un alias de servicio de Red de Oracle local, seleccione Local Naming en la lista desplegable Administer y haga clic en Go; a continuación, haga clic en Create.Puede configurar alias de servicio para nomenclatura de directorios seleccionando Directory Naming en lugar de Local Naming.Nota: Si la nomenclatura de directorios aún no se ha configurado, no se puede seleccionar la opción Directory Naming. La nomenclatura de directorios se aborda en el curso Oracle Enterprise Identity Management y también en el manual Oracle Advanced Security Administration.En la página Create Net Service Name, introduzca un nombre único en el campo Net Service Name (nombre que los usuarios introducen cuando quieren utilizar este alias). Introduzca el nombre del servicio o el identificador del sistema (SID) de la base de datos a la que se desea conectar y haga clic en el botón Add para introducir la dirección del nombre del servicio.Para la dirección, introduzca el protocolo, el puerto y el host que utiliza el listener para el servicio al que desea conectar.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 37: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-23

Copyright © 2005, Oracle. Todos los derechos reservados.

Opciones de Conexión Avanzada

La Red de Oracle soporta las siguientes opciones de conexión avanzada con nomenclatura local y de directorios:• Operación de failover de tiempo de conexión• Equilibrio de carga• Direccionamiento de origen

Opciones de Conexión AvanzadaCon las opciones de conexión avanzada, la Red de Oracle puede aprovechar la operación de failover al listener y el equilibrio de carga, así como el direccionamiento de origen de Oracle Connection Manager.Con la operación de failover de tiempo de conexión activada, el alias tiene una lista de dos o más direcciones de listener. Si la primera dirección no está disponible, se intenta la segunda. La Red de Oracle seguirá probando direcciones según el orden de la lista hasta que llegue a un listener en funcionamiento o hasta que todas las direcciones se hayan probado y hayan fallado.Con el equilibrio de carga activado, la Red de Oracle selecciona una dirección de forma aleatoria de la lista de direcciones. El direccionamiento de origen se utiliza con Oracle Connection Manager. Oracle Connection Manager sirve como servidor proxy para el tráfico de Red de Oracle, lo que permite que el tráfico de Red de Oracle se direccione de forma segura a través de un firewall. La Red de Oracle trata las direcciones como una lista de transmisiones, por lo que se conecta con la primera dirección y, a continuación, solicita la transferencia de la primera a la segunda hasta que se alcance el destino. Se diferencia de la operación de failover o el equilibrio de carga en que todas las direcciones se utilizan cada vez que se realiza una conexión.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 38: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-24

Opciones de Conexión Avanzada (continuación)Tenga en cuenta que hay cinco opciones de operación de failover de tiempo de conexión y de equilibrio de carga. Las cinco opciones se traducen a:

NingunaUse only the first address.

Direccionamiento de origen

Use each address in order until the destination is reached.

Equilibrio de cargaTry one address selected at random.

FailoverEquilibrio de carga

Try each address, randomly, until one succeeds.

FailoverTry each address, in order, until one succeeds.

Funcionalidad Avanzada

Opción

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 39: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-25

Copyright © 2005, Oracle. Todos los derechos reservados.

Prueba de la Conectividad de Red de Oracle

La utilidad tnsping que comprueba los alias de servicio de Red de Oracle:• Garantiza la conectividad entre el cliente y el

listener de Red de Oracle• No verifica que el servicio solicitado esté disponible• Soporta resolución de nombres de conexión

sencilla

• Soporta nomenclatura local y de directorios:

tnsping db.us.oracle.com:1521/dba10g

tnsping orcl

Prueba de la Conectividad de Red de Oracletnsping es el equivalente en la Red de Oracle de la utilidad de ping de TCP/IP. Ofrece una prueba rápida para verificar que la ruta de acceso de red a un destino es adecuada. Por ejemplo, introduzca tnsping orcl en una ventana de línea de comandos.La utilidad valida que el nombre del host, el puerto y el protocolo llegan a un listener. No comprueba realmente si el listener maneja el nombre del servicio. Otra información útil que revela tnsping es la ubicación de los archivos de configuración. En un sistema con varias ubicaciones de ORACLE_HOME, esto puede ser útil.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 40: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-26

Copyright © 2005, Oracle. Todos los derechos reservados.

Sesiones de Usuario: Servidor Dedicado

Proceso de servidor

Proceso de servidor

Sesiones de usuario

Proceso de servidor

Listener

Sesiones de Usuario: Servidor DedicadoCon procesos de servidor dedicado hay una relación equitativa entre procesos de servidor y procesos de usuario. Cada proceso de servidor utiliza recursos del sistema, incluidos ciclos de CPU y memoria.En un sistema con una carga intensiva, los recursos de memoria y CPU que utilizan los procesos de servidor dedicado pueden ser extremadamente altos y pueden afectar negativamente a la escalabilidad del sistema. Si el sistema sufre un impacto negativo por las demandas de recursos de la arquitectura del servidor dedicado, tiene las dos opciones siguientes:

• Aumentar los recursos del sistema agregando más memoria y capacidad adicional de CPU• Utilizar la arquitectura de servidor compartido Oracle

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 41: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-27

Copyright © 2005, Oracle. Todos los derechos reservados.

Sesiones de Usuario: Servidor Compartido

Listener

Distribuidor

Proceso de servidor

Proceso de servidor

Proceso de servidor

Sesiones de usuario

Sesiones de Usuario: Servidor CompartidoCada servicio que participe en la arquitectura de servidor compartido tiene al menos un (y normalmente más) proceso del distribuidor. Cuando llega una solicitud de conexión, el listener no origina un proceso de servidor dedicado. En su lugar, el listener mantiene una lista de distribuidores disponibles para cada nombre de servicio, junto con la carga de conexión (número de conexiones simultáneas) para cada distribuidor.Las solicitudes de conexión se direccionan al distribuidor con menos carga que se ocupa de un nombre de servicio determinado. Los usuarios permanecen conectados al mismo distribuidor durante una sesión.A diferencia de los procesos de servidor dedicado, un único distribuidor puede gestionar cientos de sesiones de usuario. Los distribuidores no manejan realmente el trabajo de las solicitudes de usuario. En su lugar, transfieren solicitudes de usuario a una cola común situada en la parte de pool compartido del SGA. Los procesos de servidor compartido asumen la mayor parte del trabajo de los procesos de servidor dedicado, obteniendo solicitudes de la cola y procesándolas hasta que se terminen.Puesto que varios procesos de servidor compartido pueden procesar solicitudes de una única sesión de usuario, la mayor parte de las estructuras de memoria almacenadas normalmente en el PGA debe estar en una ubicación de la memoria compartida (por defecto, en el pool compartido).Sin embargo, si el pool grande está configurado o Automatic Memory Management está definido en SGA_TARGET, estas estructuras de memoria se almacenan en el pool grande del SGA.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 42: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-28

Copyright © 2005, Oracle. Todos los derechos reservados.

SGA

Pool grande y otras estructuras

de memoria

Espaciode pila

PGA

SGA y PGA

Datos desesión deusuario

Estadodel

cursor

Servidor compartido Oracle: Los datos de la sesión de usuario se almacenan en el SGA.

Ordenardatos

No olvide tener en cuenta el requisito de memoria del servidor compartido cuando cambie de tamaño el SGA.

SGA y PGAEl contenido de SGA y PGA varía cuando se utilizan servidores dedicados o compartidos:

• Los formatos de texto y analizados de todas las sentencias SQL se almacenan en el SGA.• El estado del cursor contiene valores de memoria en tiempo de ejecución para la sentencia

SQL, como las filas recuperadas.• Los datos de sesión de usuario incluyen información sobre seguridad y uso de recursos.• El espacio de pila contiene variables locales para el proceso.

Nota TécnicaEl cambio en SGA y PGA es transparente para el usuario; sin embargo, si se admiten varios usuarios, debe aumentar el parámetro de inicialización LARGE_POOL_SIZE. Cada proceso de servidor compartido debe acceder a los espacios de datos de todas las sesiones para que cualquier servidor pueda manejar solicitudes desde cualquier sesión. El espacio se asigna en el SGA para el espacio de datos de cada sesión. Puede limitar el espacio que puede asignar una sesión configurando el límite del recurso PRIVATE_SGA en la región Database Services de la página General del perfil del usuario.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 43: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-29

Copyright © 2005, Oracle. Todos los derechos reservados.

Servidor Compartido: Pool de Conexiones

La aplicación del cliente ha sobrepasado el tiempo de inactividad

especificado y un cliente entrante solicita una conexión.

Se ha configurado el número máximo de conexiones en 255.

Esta conexión de cliente es la conexión 256 en el servidor. Se activa el pool de conexiones para que se pueda aceptar la conexión.

Servidor debase de datos

Cliente inactivo

Cliente activo

Cliente nuevo

Servidor Compartido: Pool de ConexionesLa función de pool de conexiones le permitirá al servidor de base de datos agotar el timeout de una sesión inactiva y utilizar la conexión para mantener una sesión activa. La sesión lógica inactiva permanece abierta y la conexión física se restablece automáticamente cuando la siguiente solicitud proviene de esa sesión. Por lo tanto, las aplicaciones Web pueden permitir que números mayores de usuarios simultáneos se incluyan en el hardware existente. El pool de conexiones se puede configurar a través del servidor compartido. En este ejemplo, se han configurado 255 conexiones en el servidor de bases de datos Oracle. Uno de los clientes ha sobrepasado el tiempo de inactividad especificado. El pool de conexiones hace que esta conexión esté disponible para una conexión entrante del cliente, es decir la conexión 256. Cuando el cliente inactivo tiene más trabajo, la conexión de ese cliente se restablece con la conexión inactiva de otro cliente.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 44: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-30

Copyright © 2005, Oracle. Todos los derechos reservados.

Cuándo No se Debe Utilizar un Servidor Compartido

Algunos tipos de trabajos de base de datos no se deben realizar con servidores compartidos:• Administración de base de datos• Operaciones de copia de seguridad y recuperación• Procesamiento por lotes y operaciones de carga en

bloque• Operaciones de almacén de datos

Distribuidor Proceso de servidor dedicado

Cuándo No se Debe Utilizar un Servidor CompartidoLa arquitectura de servidor compartido Oracle es un modelo de uso de memoria y procesos eficaz, pero no es adecuado para todas las conexiones. Debido a la cola de solicitudes común y a que muchos usuarios pueden compartir una cola de respuesta del distribuidor, los servidores compartidos no dan buenos resultados con operaciones que deben ocuparse de grandes juegos de datos, como consultas de almacén o procesamiento por lotes.Las sesiones de copia de seguridad y recuperación que utilizan Oracle Recovery Manager (se tratará en posteriores lecciones) también se ocupan de grandes juegos de datos y deben utilizar conexiones dedicadas.Muchas tareas de administración no se deben (y no se pueden) realizar utilizando conexiones deservidor compartido. Dichas tareas incluyen el inicio y el cierre de la instancia, la creación de tablespaces o archivos de datos, el mantenimiento de índices y tablas, el análisis de estadísticas y muchas otras tareas que normalmente realiza el DBA. Todas las sesiones de DBA deben seleccionar servidores dedicados.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 45: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-31

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Utilizar Enterprise Manager para:

– Crear listeners adicionales– Crear alias de servicio de Red de Oracle– Configurar operaciones de failover de tiempo de

conexión– Controlar el listener de Red de Oracle

• Utilizar tnsping para realizar pruebas de la conectividad de Red de Oracle

• Identificar cuándo se deben utilizar servidores compartidos frente a servidores dedicados

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 46: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 11-32

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica: Trabajar con los Componentes de Red de Oracle

En esta práctica se aborda: • Configuración de la resolución de nombres local

para conectar a otra base de datos• Creación de un segundo listener para el failover

de tiempo de conexión

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 47: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Mantenimiento Proactivo

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 48: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para lo siguiente:• Utilizar estadísticas• Gestionar el repositorio de carga de trabajo

automática (AWR)• Utilizar el monitor de diagnóstico de base de datos

automático (ADDM)• Describir el marco de asesoramiento• Definir umbrales de alerta• Utilizar alertas generadas por el servidor• Utilizar tareas automáticas

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 49: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Mantenimiento Proactivo

Repositorio de Carga de Trabajo

Automática

Alertasde servidor

Tareasautomáticas

Marco deasesoramiento

Almacén de datosde la base de datos

Recopilación automáticade estadísticas importantes

Acceso directoa memoria

Automático Proactivo

Eficaz

Mantenimiento ProactivoLa infraestructura sofisticada de la base de datos Oracle hace que el mantenimiento proactivo sea sencillo. Los elementos principales son los siguientes:

• El repositorio de carga de trabajo automática (AWR) es un repositorio incorporado en cada base de datos Oracle. En intervalos regulares, la base de datos Oracle realiza una instantánea de todas las estadísticas fundamentales y la información de carga de trabajo y la almacena en AWR. Los datos capturados los puede analizar el usuario, la propia base de datos o ambos.

• Mediante el análisis de la información almacenada en AWR, la base de datos puede identificar la necesidad de realizar tareas de mantenimiento rutinarias, como realizar copias de seguridad periódicas para maximizar la disponibilidad o refrescar las estadísticas que se utilizan para optimizar la ejecución de sentencias SQL.

• La base de datos Oracle proporciona alertas generadas por el servidor para los problemas que no se pueden resolver de manera automática y que se necesitan notificar a los administradores (como, por ejemplo, la falta de espacio). La base de datos Oracle se puede controlar a sí misma y mandar alertas para notificar los problemas. Las alertas no sólo notifican los problemas sino que también ofrecen recomendaciones de cómo se pueden solucionar.

• Las recomendaciones se generan desde los diferentes asesores, cada uno de los cuales es responsable de un subsistema. Por ejemplo, existen asesores de memoria y de SQL.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 50: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Introducción a la Terminología

• Repositorio de carga de trabajo automática (AWR): Infraestructura para recopilar datos, realizar análisis y recomendar soluciones

• Línea base: Datos recopilados de una “base de datos que se ejecuta de manera normal” para comparar el rendimiento

• Métrica: Ratio de cambio en una estadística acumulativa

• Estadísticas: Recopilaciones de datos utilizadas para optimizar las operaciones internas, como la ejecución de una sentencia SQL

• Umbral: Valor de límite respecto al que se comparan los valores métricos

Introducción a la TerminologíaEl repositorio de carga de trabajo automática (AWR) proporciona servicios a los componentes de servidor de Oracle internos para recopilar, procesar, mantener y utilizar las estadísticas de rendimiento para detectar posibles problemas y aplicar los ajustes necesarios automáticamente.El historial de sesiones activas (ASH) es el historial de la actividad de sesión más reciente, almacenado en AWR.Las estadísticas son una recopilación de datos que proporcionan más detalles sobre la base de datos y los objetos de la misma. El optimizador de consulta utiliza las estadísticas del optimizador para elegir el mejor plan de ejecución para cada sentencia SQL.En los datos de línea base se debe incluir:

• Estadísticas de aplicación (volúmenes de transacción, tiempo de respuesta)• Estadísticas de base de datos• Estadísticas del sistema operativo.• Estadísticas de E/S de disco• Estadísticas de red

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 51: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Estadísticas del Optimizador

Las estadísticas del optimizador:• No son en tiempo real• Son persistentes tras los reinicios de la instancia• Se recopilan automáticamenteSQL> SELECT COUNT(*) FROM hr.employees;

COUNT(*)

----------

214

SQL> SELECT num_rows FROM dba_tables

2 WHERE owner='HR' AND table_name = 'EMPLOYEES';

NUM_ROWS

----------

107

> EstadísticasAWRADDMAsesoresAlertasTareas Autom.

Estadísticas del OptimizadorEn las estadísticas del optimizador se incluyen estadísticas de tabla, columna, índice y sistema. Las estadísticas para tablas e índices se almacenan en el diccionario de datos. Estas estadísticas no están destinadas a proporcionar datos en tiempo real. Proporcionan al optimizador una instantánea estadísticamente correcta del almacenamiento y la distribución de datos que el optimizador utiliza para tomar decisiones sobre cómo acceder a los datos.En las estadísticas recopiladas se incluyen:

• Tamaño de la tabla o índice en los bloques de base de datos• Número de filas• Recuento de cadenas y tamaño medio de fila (sólo tablas)• Altura y número de filas de hoja suprimidas (sólo índices)

A medida que se insertan, suprimen y modifican datos, estos hechos cambian. El impacto en el rendimiento del mantenimiento de estadísticas de distribución de datos en tiempo real sería extremadamente alto, de modo que estas estadísticas se actualizan recopilando periódicamente estadísticas en tablas e índices.Las estadísticas del optimizador las recopila automáticamente el trabajo GATHER_STATS_JOBpreconfigurado, que se ejecuta una vez al día durante las ventanas de mantenimiento predefinidas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 52: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-6

Estadísticas del Optimizador (continuación)Una tabla grande que experimenta un crecimiento (o reducción) del 10% en un período de 24 horas se suele considerar demasiado volátil para que sea suficiente una recopilación de estadísticas una vez al día. Para las tablas que experimenten este nivel de cambio, Oraclerecomienda recopilar estadísticas con más frecuencia, a ser posible con la periodicidad suficiente para que la tabla nunca cambie más de un 10% entre períodos de recopilación. Para ello se necesita la recopilación manual de estadísticas.Las estadísticas se pueden recopilar manualmente con Enterprise Manager o con el paquete DBMS_STATS, como se muestra a continuación:

SQL> EXEC dbms_stats.gather_table_stats(‘HR’,’EMPLOYEES’);SQL> SELECT num_rows FROM dba_tables

2 WHERE owner='HR' AND table_name = 'EMPLOYEES';NUM_ROWS

----------214

Observe que ahora el número de filas refleja correctamente lo que había en la tabla en el momento en que se recopilaron las estadísticas. DBMS_STATS también permite la recopilación manual de estadísticas para un esquema completo o incluso toda la base de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 53: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-7

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso de la Página Manage Optimizer Statistics

Uso de la Página Manage Optimizer Statistics Haga clic en Manage Optimizer Statistics en la página con separadores Administration para acceder a la página Enterprise Manager y gestionar las estadísticas del optimizador. Observe que (tal y como se muestra en esta página) GATHER_STATS_JOB está activado. Se ha ejecutado nueve veces y, la última vez, se ejecutó correctamente en 97 objetos. Para ello, necesitó algo más de un minuto. Para que GATHER_STATS_JOB funcione de manera correcta, hay que asegurarse de que el parámetro de inicialización STATISTICS_LEVEL esté definido en al menos TYPICAL.Nota: La ventana por defecto de este trabajo es de 10:00 p.m. a 6:00 a.m. entre semana y de las 12:00 a.m. del sábado a las 12:00 a.m. del lunes los fines de semana. Cuando se cierra la ventana de mantenimiento, por defecto, el planificador termina GATHER_STATS_JOB. Los objetos restantes se procesan en la próxima ventana de mantenimiento.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 54: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-8

Uso de la Página Manage Optimizer Statistics (continuación)Desde esta página puede realizar las siguientes tareas en las estadísticas:

• Recopilar estadísticas del optimizador manualmente. Esta acción ejecuta el trabajo que GATHER_STATS_JOB realiza de manera automática. Se debe realizar en el caso de que el contenido de una tabla haya cambiado tanto entre los trabajos de recopilación automáticos que las estadísticas ya no representen la tabla de forma precisa. Entre los ejemplos se incluye una tabla que se ha truncado a mitad del día y un trabajo por lotes que se ejecuta y agrega grandes cantidades de datos a una tabla.

• Restaurar las estadísticas del optimizador en un punto en el pasado. El punto en el tiempo seleccionado se debe situar dentro del período de retención de las estadísticas del optimizador, que es de 30 días por defecto.

• Bloquear las estadísticas del optimizador para garantizar que las estadísticas de determinados objetos nunca se sobrescriban. Esta opción resulta útil si se han calculado las estadísticas de una determinada tabla en un momento en el que estaban presentes los datos más representativos y si desea mantener siempre esas estadísticas. Las fluctuaciones de la tabla no afectarán a las estadísticas si están bloqueadas.

• Desbloquear las estadísticas del optimizador para deshacer un bloqueo realizado previamente.

• Suprimir las estadísticas del optimizador para suprimir estadísticas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 55: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-9

Copyright © 2005, Oracle. Todos los derechos reservados.

Niveles de Estadísticas

STATISTICS_LEVEL

BASIC TYPICAL ALL

Valor pordefecto

recomendado

Estadísticas adicionalespara diagnósticos

SQL manuales

Capacidades deajuste automático

desactivadas

Niveles de EstadísticasPuede controlar el juego de estadísticas que se desea capturar mediante el parámetro de inicialización STATISTICS_LEVEL, que incluye los siguientes niveles de captura:• BASIC: Desactiva el cálculo de estadísticas y métricas de AWR.• TYPICAL: Sólo se recopilan algunas de las estadísticas. Representan lo que normalmente

se necesita para controlar el comportamiento de la base de datos Oracle. Esta recopilación automática de estadísticas reduce la posibilidad de sentencias SQL de rendimiento bajo debido a estadísticas anticuadas o no válidas.

• ALL: Se capturan todas las estadísticas posibles. Este nivel de captura sólo se deberáutilizar en algunos casos, poco usuales, en los que se necesite información de diagnóstico SQL adicional.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 56: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Repositorio de Carga deTrabajo Automática (AWR)

• Repositorio incorporado de información sobre el rendimiento

• Se toman instantáneas de las métricas de la base de datos cada 60 minutos y se retienen durante 7 días

• Base para todas las funciones de autogestión

MMONEstadísticasen memoria Instantáneas

AWRSGA

60 minutos

Estadísticas> AWR

ADDMAsesoresAlertasTareas Autom.

Repositorio de Carga de Trabajo Automática (AWR)AWR es la infraestructura que proporciona a los componentes de la base de datos Oracle 10g los servicios necesarios para recopilar, mantener y utilizar estadísticas para detectar problemas y aplicar ajustes automáticos. Puede considerarlo como almacén de datos para las estadísticas de base de datos, métricas, etc.Por defecto, cada 60 minutos la base de datos captura automáticamente información estadística de SGA y la almacena en AWR con el formato de instantáneas. Estas instantáneas se almacenan en el disco mediante un proceso en segundo plano denominado monitor de gestión (MMON). Por defecto, las instantáneas se retienen durante siete días. Puede modificar tanto el intervalo de instantánea como los intervalos de retención.AWR contiene cientos de tablas, todas pertenecientes al esquema SYSMAN y almacenadas en el tablespace SYSAUX. La base de datos Oracle no soporta el acceso SQL directo al repositorio. En su lugar, utiliza Enterprise Manager o el paquete DBMS_WORKLOAD_REPOSITORY para su funcionamiento con AWR.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 57: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Infraestructura de AWR

SGA

V$ DBA_*

ADDMComponente

de ajusteautomático

Componentede ajuste

automático…

Clientes internos

Clientes externosEM SQL*Plus …

Recoleccióneficaz de

estadísticasen memoria

InstantáneasAWRMMON

Infraestructura de AWRLa infraestructura de AWR consta de dos partes principales:

• Un servicio de recopilación de estadísticas en memoria que utilizan los componentes de la base de datos Oracle 10g para recopilar estadísticas. Estas estadísticas se almacenan enmemoria por motivos de rendimiento. Para acceder a las estadísticas almacenadas enmemoria se utilizan las vistas de rendimiento dinámicas (V$).

• Las instantáneas AWR que representan la porción persistente de la utilidad. Para acceder a las instantáneas AWR se utilizan las vistas del diccionario de datos y Enterprise Manager Database Control.

Las estadísticas se almacenan de forma persistente por varios motivos:• Las estadísticas deben sobrevivir a posibles fallos de la instancia.• Algunos análisis necesitan datos históricos para realizar comparaciones de línea base.• Se puede producir un desbordamiento de memoria. Cuando las estadísticas antiguas se

sustituyen por nuevas por falta de memoria, los datos sustituidos se pueden almacenar con objeto de utilizarlos más adelante.

La versión de la memoria de las estadísticas se transfiere al disco regularmente mediante el proceso en segundo plano MMON. Con AWR, la base de datos Oracle ofrece un sistema para capturar datos estadísticos históricos automáticamente, sin intervención por parte de los DBA.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 58: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-12

Copyright © 2005, Oracle. Todos los derechos reservados.

Juegos de Instantáneas AWR

DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE ( -

start_snap_id IN NUMBER ,

end_snap_id IN NUMBER ,

baseline_name IN VARCHAR2);

Período relevanteen el pasado

Juegos de Instantáneas AWRLos juegos de instantáneas constituyen el mecanismo que le permite etiquetar juegos de datos de instantáneas relativos a períodos importantes. Un juego de instantáneas se define en una pareja de instantáneas; las instantáneas se identifican por sus números de secuencia de instantánea (snap_id). Cada juego de instantáneas corresponde a una única pareja de instantáneas.Un juego de instantáneas se puede identificar por el nombre que haya especificado el usuario o por el identificador generado por el sistema. Para crear un juego de instantáneas, simplemente ejecute el procedimiento DBMS_WORKLOAD_REPOSITORY.CREATE_BASELINE y especifique un nombre y una pareja de identificadores de instantáneas. Se asignará un identificador de juego de instantáneas al juego de instantáneas recién creado. Los identificadores de juego de instantáneas son únicos durante toda la existencia de la base de datos.Los juegos de instantáneas se utilizan para retener datos de instantáneas. Así pues, las instantáneas pertenecientes a los juegos de instantáneas se retendrán hasta que se borren dichos juegos.Los juegos de instantáneas se configuran normalmente a partir de ciertos períodos representativos del pasado con objeto de comparar el comportamiento del sistema en ese momento con el comportamiento actual. También se pueden definir alertas basadas en umbrales mediante juegos de instantáneas desde Database Control.Puede obtener los valores de snap_ids directamente desde DBA_HIST_SNAPSHOT o Enterprise Manager Database Control.Nota: Para obtener más información sobre el paquete DBMS_WORKLOAD_REPOSITORY, consulte la guía Oracle Database PL/SQL Packages and Types Reference.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 59: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Enterprise Manager y AWR

Enterprise Manager y AWRSeleccione Administration > Database Administration > Statistics Management > Automatic Workload Repository y haga clic en Edit para cambiar los valores.Desde la página Automatic Workload Repository podrá:

• Editar los valores del repositorio de carga de trabajo.• Consultar información detallada acerca de las instantáneas creadas y crear manualmente

instantáneas nuevas.• Crear líneas base, también denominadas juegos de instantáneas mantenidas.• Generar un informe de AWR.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 60: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-14

Copyright © 2005, Oracle. Todos los derechos reservados.

Gestión de AWR

• Período de retención– El valor por defecto es de 7 días– Considere las necesidades de

almacenamiento• Intervalo de recopilación

– El valor por defecto es de 60 minutos

– Considere las necesidades de almacenamiento y el impacto en el rendimiento

• Nivel de recopilación– BASIC (desactiva la mayoría de las funciones de ADDM)– TYPICAL (recomendado)– ALL (agrega información adicional de ajustes SQL a las

instantáneas)

Gestión de AWRLos valores de AWR incluyen el período de retención, el intervalo de recopilación y el nivel de recopilación. Recuerde que la disminución de cualquiera de estos valores afecta a la funcionalidad de los componentes que dependen de AWR, incluso a los asesores.El aumento de los valores puede ofrecer mejores recomendaciones de los asesores, pero a costa del espacio necesario para almacenar las instantáneas y el rendimiento utilizado para recopilar la información de instantáneas. Plantéese la opción de definir el nivel de recopilación en ALL cuando ajuste una aplicación nueva. El valor ALL recopila los planes de ejecución SQL y las estadísticas de temporización que mejoran las recomendaciones de los asesores SQL. Una vez terminado el ajuste, este valor debe volver al valor TYPICAL.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 61: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Monitor de Diagnóstico de Basede Datos Automático (ADDM)

• Se ejecuta después de las instantáneas de AWR

• Controla la instancia y detecta los cuellos de botella

• Almacena resultados en AWR

Instantáneas

ADDM

AWR

EMResultados de ADDM

EstadísticasAWR

> ADDMAsesoresAlertasTareas Autom.

Monitor de Diagnóstico de Base de Datos Automático (ADDM)A diferencia de otros asesores, ADDM se ejecuta automáticamente después de cada instantánea de AWR. Cada vez que se toma una instantánea, ADDM realiza un análisis del período correspondiente a las dos últimas instantáneas. ADDM controla de forma proactiva la instancia y detecta la mayoría de los cuellos de botella antes de que se conviertan en un problema importante.En muchos casos, ADDM recomienda soluciones para los problemas detectados e incluso cuantifica las ventajas de las recomendaciones. Entre los problemas comunes que detecta ADDM se incluyen:

• Cuellos de botella en CPU• Gestión deficiente de la conexión de Red de Oracle• Contención de bloqueo • Capacidad de entrada/salida (E/S)• Reducción excesiva del tamaño de las estructuras de memoria de Oracle• Sentencias SQL de carga alta• Tiempos de PL/SQL y de Java altos• Carga alta de punto de control y causa (por ejemplo, archivos log pequeños)

Los resultados de los análisis de ADDM se almacenan en AWR y también se puede acceder a ellos a través de Enterprise Manager.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 62: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-16

Copyright © 2005, Oracle. Todos los derechos reservados.

Resultados de ADDM

1

2

3

Resultados de ADDMLa página Automatic Database Diagnostic Monitor (ADDM) le permite ver los resultados detallados del último análisis de ADDM ejecutado. Database Time representa la suma del tiempo de actividad en las sesiones de la base de datos durante el período de análisis. Cada resultado tiene un porcentaje de impacto específico. El impacto representa el tiempo consumido por el problema correspondiente comparado con el tiempo de la base de datos durante el período de análisis. En esta diapositiva, puede observar:

1. El gráfico muestra que el número medio de usuarios activos aumentó drásticamente en este punto. Además, el problema más importante fue un problema de espera (Wait).

2. El icono muestra que la salida de ADDM que aparece en la parte inferior de la página corresponde a este momento. Puede ir a un momento anterior (para ver un análisis previo) haciendo clic en los otros iconos.

3. Los resultados le proporcionan un corto resumen de lo que descubrió ADDM como áreas ajustables. Al hacer clic en un problema concreto, pasará a la página Performance Finding Details.

Si hace clic en el botón View Report podrá acceder a información detallada sobre el análisis de rendimiento en forma de informe de texto.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 63: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Recomendaciones de ADDM

Recomendaciones de ADDMLa página Performance Finding Details le proporciona recomendaciones para solucionar los problemas encontrados. Las recomendaciones se agrupan en categorías, entre ellas categorías de esquema, de ajuste SQL y de configuración de la base de datos. La columna Benefit (%)muestra la reducción máxima de tiempo transcurrido en la base de datos al implementar la recomendación.ADDM considera la posibilidad de aplicar varios cambios al sistema y entre sus recomendaciones están:

• Cambios de hardware: Agregar CPU o cambiar la configuración del subsistema de E/S.• Configuración de la base de datos: Cambiar valores de parámetros de inicialización.• Cambios de esquema: Hacer particiones hash de tablas o índices, o utilizar la gestión

automática de espacio de segmento (ASSM).• Cambios de aplicación: Utilizar la opción de caché para secuencias o usar variables

ligadas.• Utilizar otros asesores: Ejecutar el Asesor de Ajustes SQL en SQL con mucha carga o

ejecutar el Asesor de Segmentos en objetos activos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 64: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Marco de Asesoramiento

ADDM

Asesor de Ajustes SQL

Asesor de Acceso SQL

Memoria

Espacio

Asesor de PGA

SGA

Asesor de Segmentos

Asesor de Deshacer

Asesor de Cachéde Buffers

Asesor de Cachéde Bibliotecas

PGA

Copia de Seguridad Asesor de MTTR

EstadísticasAWRADDM

> AsesoresAlertasTareas Autom.

Marco de AsesoramientoLos asesores son componentes de servidor que proporcionan información de gran utilidad acerca de la utilización y el rendimiento de los recursos de sus respectivos componentes. Al contar con los datos capturados por AWR, ADDM permite a la base de datos Oracle diagnosticar su propio rendimiento y determinar cómo se pueden resolver los problemas identificados. ADDM se ejecuta automáticamente después de cada una de las capturas de estadísticas AWR y puede llamar a otros asesores.Las principales ventajas que proporciona la infraestructura de asesores son las siguientes:

• Utiliza una interfaz uniforme para todos los asesores.• Todos los asesores disponen de un origen de datos común y un almacén de resultados al

utilizar el repositorio de carga de trabajo.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 65: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-19

Marco de Asesoramiento (continuación)Monitor de Diagnóstico de Base de Datos Automático (ADDM)Experto basado en servidor que revisa el rendimiento de la base de datos cada 60 minutos. El objetivo de ADDM es detectar pronto los posibles cuellos de botella del sistema y recomendar correcciones antes de que el rendimiento del sistema se reduzca sensiblemente.Asesores de MemoriaEl Asesor de Memoria es en realidad una recopilación de varias funciones de asesoramiento que ayudan a determinar los mejores valores para el pool compartido, la caché de buffers de la base de datos y el Área Global de Programa (PGA). Además de las funciones de asesoramiento, esta página ofrece un punto central de control para el pool grande y el pool Java.Asesor de Tiempo Medio para la Recuperación (MTTR)Mediante el asesor de MTTR puede definir el tiempo necesario para que la base de datos se recupere después de un fallo de instancia.Asesor de SegmentosEste asesor busca tablas e índices que consumen más espacio del que necesitan. El asesor comprueba el consumo de espacio ineficaz en el nivel de esquema o tablespace y produce archivos de comandos que reducen el consumo de espacio donde es posible.Asesor de Acceso SQLEste asesor analiza todas las sentencias SQL emitidas en un período determinado y sugiere la creación de índices o vistas materializadas adicionales que mejorarán el rendimiento.Asesor de Ajustes SQLEste asesor analiza una sentencia SQL individual y realiza recomendaciones para mejorar su rendimiento. Las recomendaciones pueden incluir acciones como reescritura de la sentencia, cambio de la configuración de la instancia o adición de índices. No se llama directamente al Asesor de Ajustes SQL. En su lugar, se llama desde otras herramientas, como Top SQL o Top Sessions, para ayudar a optimizar las sentencias SQL de gran impacto.Asesor de Gestión de DeshacerCon el Asesor de Gestión de Deshacer puede determinar el tamaño del tablespace de deshacer necesario para soportar un determinado período de retención. La gestión de deshacer y el uso del asesor se tratan en la lección titulada “Gestión de Datos de Deshacer”.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 66: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-20

Copyright © 2005, Oracle. Todos los derechos reservados.

Enterprise Manager y Asesores

Enterprise Manager y AsesoresLa página Advisor Central es la página principal de todos los asesores. Para llegar a esta página, haga clic en el enlace Advisor Central en la lista Related Links de la página inicial de Database Control. Este no es sin embargo el único punto de acceso a los asesores en Database Control. También se puede acceder a los asesores desde otros contextos.En la página Advisor Central, puede ver una lista de todas las tareas de asesor registradas en el repositorio de carga de trabajo. También puede filtrar esta lista por tipo de asesor y por períodos de tiempo predefinidos.Algunos de los asesores se describen con mayor detalle en las lecciones tituladas “Gestión de Datos de Deshacer”, “Gestión de Rendimiento” y “Conceptos de Copia de Seguridad y Recuperación”.Nota: Utilice la página Change Default Parameters para cambiar el tiempo de vencimiento por defecto en días para todas las tareas futuras. También puede utilizar esta página para cambiar algunos de los parámetros importantes del asesor.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 67: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Paquete DBMS_ADVISOR

Crea un archivo de comandos con todas las recomendaciones que se acepten.

GET_TASK_SCRIPT

Marca una o más recomendaciones como aceptadas, rechazadas o ignoradas.

MARK_RECOMMENDATION

Modifica un parámetro de tarea.SET_TASK_PARAMETER

Actualiza atributos de tarea.UPDATE_TASK_ATTRIBUTES

Hace que se reanude una tarea suspendida.RESUME_TASK

Crea y devuelve un informe de texto para la tarea especificada.

GET_TASK_REPORT

Suspende una tarea que se está ejecutando actualmente.

INTERRUPT_TASK

Inicia la ejecución de la tarea.EXECUTE_TASK

Suprime una tarea del repositorio.DELETE_TASK

Crea una tarea nueva en el repositorio.CREATE_TASK

DescripciónProcedimiento

Paquete DBMS_ADVISOR

El paquete DBMS_ADVISOR contiene todas las declaraciones de procedimiento y constantes para todos los módulos de asesor. Puede utilizar este paquete para ejecutar tareas mediante la línea de comandos.Para poder ejecutar los procedimientos de asesor es necesario disponer del privilegio ADVISOR. El privilegio ADVISOR permite acceder plenamente a las vistas y los procedimientos del asesor.Nota: Para obtener más información sobre todos los procedimientos del paquete DBMS_ADVISOR, consulte la guía Oracle Database PL/SQL Packages and Types Reference.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 68: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-22

Copyright © 2005, Oracle. Todos los derechos reservados.

Alertas Generadaspor el Servidor

Colade alertas

del servidor.

La métrica excedeel umbral.

AWR

Enterprise Manager

Instanciade Oracle

EstadísticasAWRADDMAsesores

> AlertasTareas Autom.

Alertas Generadas por el ServidorLas alertas sirven para notificar cuándo una base de datos está en un estado no deseado y necesita atención. Por defecto, la base de datos Oracle proporciona alertas a través de Enterprise Manager Database Control. Opcionalmente, Enterprise Manager se puede configurar para enviar un correo electrónico al administrador acerca de las condiciones del problema, así como para mostrar la información de alerta en la consola. También puede definir los umbrales en varias de las métricas pertinentes para el sistema. La base de datos Oracle 10g notificará de forma proactiva si la base de datos se desvía de las lecturas normales lo bastante como para alcanzar dichos umbrales. Una notificación anticipada de posibles problemas permite responder rápidamente y, con frecuencia, resolver problemas antes incluso de que los usuarios los adviertan.Algunas métricas clave que pueden proporcionar una notificación anticipada del problema son:

• Average File Read Time (centiseconds)• Dump Area Used (%)• Response Time (per transaction)• SQL Response Time (%)• Tablespace Used (%)• Wait Time (%)

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 69: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-23

Copyright © 2005, Oracle. Todos los derechos reservados.

Alertas Generadas por el Servidor por Defecto

Sesiónreanudablesuspendida

Instantáneademasiado antigua

Área de recuperación con poco espacio libre

85% advertencia97% crítico

Uso de espaciode tablespace

Database Control:Métricas SYSTEM

Tablespace

Alertas Generadas por el Servidor por DefectoPor defecto, se activan las alertas generadas por el servidor en los siguientes casos:

• Uso de espacio de tablespace (advertencia 85%, crítico 97%)• Instantánea demasiado antigua• Área de recuperación con poco espacio libre• Sesión reanudable suspendida

Nota: Enterprise Manager Database Control define automáticamente umbrales en métricas del servidor con el tipo de objeto SYSTEM.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 70: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-24

Copyright © 2005, Oracle. Todos los derechos reservados.

Definición de Umbrales

Definición de UmbralesPara definir o editar un umbral para toda la base de datos, seleccione Manage Metrics en la región Related Links de la página inicial de la base de datos. Haga clic en Edit Thresholds. Introduzca los valores deseados para Warning Threshold y Critical Threshold. Aparecerán las alertas adecuadas cuando la base de datos alcance los valores especificados. Si es necesario, puede especificar una acción de respuesta adicional.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 71: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-25

Copyright © 2005, Oracle. Todos los derechos reservados.

Creación y Prueba de una Alerta

1. Especifique un umbral.2. Cree un caso de prueba.3. Compruebe la existencia

de una alerta.

21

3

Creación y Prueba de una AlertaTambién se pueden definir umbrales para un objeto concreto.Ejemplo: El usuario decide que necesita recibir una alerta crítica si el espacio que se utiliza en el tablespace INVENTORY supera el 75%. (Este tablespace no permite que los archivos de datos se amplíen automáticamente.) Para crear y probar la alerta, realice los siguientes pasos:

1. En Enterprise Manager, navegue a la administración de tablespace y defina el umbral deseado.

2. Utilice la acción “Create Like” para duplicar una tabla ya existente y rellénela mediante SQL*Plus.

3. Después de haber recibido un error informándole de que la tabla no se puede ampliar, compruebe la página inicial de la instancia de base de datos para ver alertas relacionadas.

La mayoría de las alertas contienen el nombre de un asesor asociado al que se puede llamar para obtener consejo detallado. Database Control ofrece un enlace para llamar al asesor correspondiente a cada mensaje de alerta.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 72: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-26

Copyright © 2005, Oracle. Todos los derechos reservados.

Notificación de Alertas

Notificación de AlertasEl mecanismo de notificación utiliza la interfaz de usuario porque ya está disponible enEnterprise Manager. Se basa en el concepto de una regla de notificación que establece el mecanismo de notificación adecuado para un juego de próximas alertas.Database Control permite editar las reglas de notificación. En la página inicial, haga clic en el enlace Preferences. De esta forma, se muestra la página General en la que puede especificar la dirección de correo electrónico en la que desea recibir las notificaciones.En la página General, haga clic en el enlace Rules de la región Notification. Seleccione la reglaDatabase Availability and Critical States y haga clic en el botón Edit. Aparecerá la página del asistente Edit Notification Rule Database Availability and Critical States, donde podráseleccionar las métricas (y sus niveles de gravedad) para las que desee recibir notificación.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 73: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-27

Notificación de Alertas (continuación)De manera opcional, puede especificar si desea que Enterprise Manager le proporcione una notificación directa cuando produzcan determinadas alertas. Por ejemplo, si especifica que desea una notificación por correo electrónico de las alertas críticas y tiene definido un umbral crítico para el tiempo de respuesta del sistema de cada métrica de llamada, puede enviar un correo electrónico que contenga un mensaje similar al siguiente:

Host Name=mydb.us.mycompany.com Metric=Response Time per Call Timestamp=08-NOV-2005 10:10:01 (GMT -7:00) Severity=Critical Message=Response time per call has exceeded the threshold.

See the latest ADDM analysis. Rule Name= Rule Owner=SYSMAN

El correo electrónico contiene un enlace al nombre del host y último análisis de ADDM.Por defecto, está definida la notificación de alertas en estado crítico como en el caso de que la base de datos esté caída, estado de error del log de alertas genéricas y tablespace usado. Sin embargo, para recibir estas notificaciones, debe configurar la información de correo electrónico realizando los siguientes pasos:

1. En cualquier página de Database Control, haga clic en el enlace Setup, visible tanto en la cabecera como en el pie de página.

2. En la página Setup, seleccione Notification Methods.3. Introduzca la información necesaria en la región Mail Server de la página Notifications

Methods. Existen otros métodos de notificación, entre los que se incluyen archivos de comandos e interrupciones SNMP (Simplified Network Management Protocol). Este último se puede utilizar para comunicarse con aplicaciones de terceros.Para recibir notificaciones, realice los siguientes pasos:

1. En cualquier página de Database Control, haga clic en el enlace Preferences, visible tanto en la cabecera como en el pie de página.

2. En la página Preferences, seleccione General. Introduzca la dirección de correo electrónico en la región E-mail Addresses.

3. De manera opcional, puede editar las reglas de notificación para, por ejemplo, cambiar el estado de gravedad necesario para recibir una notificación. Para ello, seleccione Notification Rules. Aparece la página Notification Rules. Para obtener más información sobre la configuración de las reglas de notificación, consulte la documentación Oracle Enterprise Manager Advanced Configuration.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 74: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-28

Copyright © 2005, Oracle. Todos los derechos reservados.

Reacción ante Alertas

• Si es necesario, recopile más entradas, por ejemplo, ejecutando ADDM u otro asesor.

• Tome medidas correctivas.• Confirme las alertas que no se borran

automáticamente.

Reacción ante AlertasAl recibir una alerta, siga cualquiera de las recomendaciones que se le proporcionan o plantéese ejecutar ADDM o cualquier otro asesor adecuado para obtener un diagnóstico más detallado del comportamiento del sistema o del objeto. La mayoría de las alertas como, por ejemplo, la alerta de falta de espacio, se borran automáticamente cuando desaparece la causa del problema. Sin embargo, con otras alertas como, por ejemplo, el error del log de alertas genéricas, se envía al usuario una notificación y el usuario deberá confirmarla. Después de tomar las medidas correctivas necesarias, puede confirmar una alerta borrándola o depurándola. Al borrar una alerta, ésta se envía al historial de alertas, que se puede visualizar desde la página inicial en Related Links. Al depurarla, se elimina del historial de alertas.Para borrar una alerta como, por ejemplo, el error del log de alertas genéricas, de la página inicial bajo Diagnostic Summary, haga clic en el enlace Alert Log. Aparece la página Alert Log Errors. Seleccione la alerta que desea borrar y haga clic en Clear. Para depurar una alerta, selecciónela y haga clic en Purge. También puede borrar y depurar cada alerta abierta mediante los botones Clear Every Open Alert o Purge Every Alert.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 75: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-29

Copyright © 2005, Oracle. Todos los derechos reservados.

Tipos de Alerta y Eliminación de Alertas

MMON

85% advertencia

97% crítico Limpiada

Limpiada

Alert

Instantáneademasiado

antigua

Sesiónreanudablesuspendida

Área derecuperación conpoco espacio libre

Basado en métricas

Basado en eventos

Alertasde umbral

(con estado)

Alertasno de umbral(sin estado)

DBA_OUTSTANDING_ALERTS DBA_ALERT_HISTORY

Tipos de Alerta y Eliminación de AlertasHay dos tipos de alertas generadas por el servidor: de umbral y no de umbral.La mayoría de las alertas generadas por el servidor se configuran definiendo valores de umbral crítico y de advertencia en métricas de base de datos. Se pueden definir umbrales para más de 120 métricas. Por ejemplo:

• Lecturas físicas por segundo• Confirmaciones por segundo• Tiempo de respuesta del servicio SQL

Excepto por la métrica de uso de espacio de tablespace, relacionada con la base de datos, el resto de las métricas están relacionadas con la instancia. Las alertas de umbral se conocen también como alertas con estado. Estas alertas se borran automáticamente cuando desaparece la condición asociada. Las alertas con estado aparecen en DBA_OUTSTANDING_ALERTS y, cuando se borran, pasan a DBA_ALERT_HISTORY.También existen otras alertas generadas por el servidor que corresponden a eventos de bases de datos específicos, como errores porque la instantánea sea demasiado antigua, porque el área de recuperación disponga de poco espacio libre y porque se haya suspendido una sesión reanudable. Estas son alertas que no se basan en umbrales, también conocidas como alertas sin estado. Las alertas sin estado pasan directamente a la tabla de historial. Borrar una alerta sin estado sólo tiene sentido en el entorno de Database Control, ya que Database Control almacena alertas sin estado en su propio repositorio.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 76: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-30

Copyright © 2005, Oracle. Todos los derechos reservados.

Tareas de MantenimientoAutomáticas

• El planificador inicia los trabajos• Los trabajos se ejecutan en la ventana

de mantenimiento por defecto• Se limita el impacto de mantenimiento

en las operaciones habituales mediante el uso del gestor de recursos

Ejemplos de mantenimiento:• Recopilar estadísticas del optimizador• Recopilar información de segmentos• Realizar copias de seguridad de bases

de datos

EstadísticasAWRADDMAsesoresAlertas

> Tareas Autom.

Tareas de Mantenimiento AutomáticasMediante el análisis de la información almacenada en AWR, la base de datos puede identificar la necesidad de realizar tareas de mantenimiento rutinarias como, por ejemplo, refrescar las estadísticas del optimizador. La infraestructura de las tareas de mantenimiento automáticas permite a la base de datos Oracle realizar de manera automática tales operaciones. Utiliza el planificador para ejecutar las tareas en una “ventana de mantenimiento” predefinida.Por defecto, la ventana de mantenimiento empieza cada noche a las 10 p.m. y dura hasta las 6 a.m. de la mañana siguiente y a lo largo de todo el fin de semana. Todos los atributos de la ventana de mantenimiento se pueden personalizar, entre los que se incluyen la hora de inicio y finalización, la frecuencia, los días de la semana, etc. Asimismo, para poder limitar el impacto delas tareas de mantenimiento automáticas en operaciones habituales de la base de datos, se tiene que asociar un plan de recursos del Gestor de Recursos de la Base de Datos a una ventana de mantenimiento.Los ejemplos de mantenimiento son los siguientes:

• Las estadísticas del optimizador se refrescan automáticamente mediante el uso de la infraestructura de tareas de mantenimiento automáticas.

• El Asesor de Segmentos tiene trabajos por defecto, que se ejecutan en la ventana de mantenimiento.

• Al crear una base de datos con DBCA, puede iniciar la realización de copias de seguridad periódicas de bases de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 77: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-31

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Utilizar estadísticas• Gestionar el repositorio de carga de trabajo

automática (AWR)• Utilizar el Monitor de Diagnóstico de Base de

Datos Automático • Describir el marco de asesoramiento• Definir umbrales de alerta• Utilizar alertas generadas por el servidor• Utilizar tareas automáticas

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 78: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 12-32

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica: Mantenimiento Proactivo

En esta práctica se abordan los siguientes temas:• Gestión proactiva de la base de datos mediante

ADDM– Configuración de un problema para analizarlo– Revisión del rendimiento de la base de datos– Implementación de una solución

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 79: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Gestión de Rendimiento

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 80: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para lo siguiente:• Utilizar Enterprise Manager para controlar el

rendimiento• Ajustar SQL mediante el Asesor de Ajustes SQL• Ajustar SQL mediante el Asesor de Acceso SQL• Utilizar la gestión automática de memoria

compartida (ASSM)• Utilizar el Asesor de Memoria para ajustar el

tamaño de los buffers de memoria• Visualizar vistas dinámicas relacionadas con el

rendimiento• Solucionar problemas de objetos no válidos o no

utilizables

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 81: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Control del Rendimiento

Problemas de asignación de

memoria

Problemas de asignación de

memoria

Contención del dispositivo de entrada/salida

Contención del dispositivo de entrada/salida

Problemas de código de aplicación

Problemas de código de aplicación

Contención de recursos

Contención de recursos

Cuellos de botella de

la red

Cuellos de botella de

la red

?DBA

> Control Rend.Asesor de AjustesAsesor de AccesoMemoriaEstadísticasObjetos no Validos

Control del RendimientoPara administrar la base de datos Oracle 10g y mantenerla en ejecución correctamente, el administrador de la base de datos (DBA) debe controlar el rendimiento regularmente para localizar cuellos de botella y corregir las áreas con problemas.Existen cientos de medidas del rendimiento que un DBA puede consultar, desde el rendimiento de la red hasta la velocidad de entrada/salida (E/S) en disco o el tiempo invertido en trabajar con operaciones de aplicaciones individuales. Estas medidas del rendimiento se conocen habitualmente como métricas de base de datos.Nota: Para obtener más información sobre el rendimiento de la base de datos Oracle, consulte el curso Base de Datos Oracle 10g: Taller de Ajustes SQL.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 82: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Control del Rendimiento

Control del Rendimiento (continuación)La página con separadores Performance de Enterprise Manager es el portal a un potente juego de herramientas de control y ajuste del rendimiento. En la primera pantalla de esta página se resumen los procesos y la actividad de la sesión activa. En el gráfico Average Active Sessions se muestra el nivel de uso de CPU y los recursos que están provocando la mayoría de los eventos de espera. En la pantalla de la diapositiva, se puede observar que se ha producido un aumento reciente del uso de CPU y de las esperas para User I/O, System I/O y Concurrency. Haga clic en cualquiera de estas categorías para obtener más información sobre las esperas. Los datos de E/S se desglosan en tipos de E/S, por ejemplo, lectura de archivo log, escritura de archivo de control, etc.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 83: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Control del Rendimiento

Control del Rendimiento (continuación)Cuando se accede a una categoría de espera específica, se pueden ver detalles sobre intervalos concretos de cinco minutos así como el SQL en funcionamiento principal (Top Working SQL) y las sesiones en funcionamiento principales (Top Working Sessions) asociadas a ese evento de espera concreto durante ese tiempo. Esto le permitirá realizar análisis posteriores de las ralentizaciones del sistema y determinar las posibles causas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 84: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-6

Copyright © 2005, Oracle. Todos los derechos reservados.

Control del Rendimiento

Control del Rendimiento (continuación)La entrada/salida del disco de instancia (Instance Disk I/O) y el rendimiento global de la instancia (Instance Throughput) también están reflejados en la página con separadores principal Performance.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 85: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-7

Copyright © 2005, Oracle. Todos los derechos reservados.

Control del Rendimiento: Top Sessions

Control del Rendimiento: Top SessionsSi hace clic en uno de los nombres de categoría de E/S, accederá a la página Top Consumers, en la que se muestran los principales servicios, módulos, acciones, clientes y sesiones, incluidas las estadísticas críticas como, por ejemplo, recuento de lecturas y escrituras lógica y física, recuento de análisis y recuento de ordenación. Si hace clic en uno de los nombres de categoría de E/S, la estadística asociada constituye el valor de orden de la lista.En la tabla de esta página se enumeran las sesiones ordenadas según el uso de CPU. Aquí se muestra que el usuario SH de la sesión 152 es el principal consumidor de CPU en este momento concreto.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 86: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Control del Rendimiento: Top Services

Control del Rendimiento: Top ServicesEn sistemas de varias capas en los que hay un servidor de aplicaciones que agrupa en pools las conexiones a la base de datos, puede que la visualización de sesiones no proporcione la información necesaria para analizar el rendimiento. La agrupación de las sesiones en nombres de servicio permite controlar el rendimiento de forma más precisa. En el ejemplo de la diapositiva, hay tres servicios: inventory, orcl y hr. Independientemente de la sesión utilizada para una solicitud concreta, si se conectó a través de uno de estos servicios, los datos de rendimiento de la sesión se capturan con el nombre de servicio. En esta lista queda claro que, de los tres servicios de aplicaciones, el servicio inventory fue el más activo durante este intervalo de cinco minutos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 87: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-9

Copyright © 2005, Oracle. Todos los derechos reservados.

Asesor de Ajustes SQL:Visión General

Agregar el índice que faltaEjecutar el Asesor de Acceso

Reestructurar SQL

Ajustar el plan SQL(perfil SQL)

Optimizador Automático de Ajustes

Modo de optimización de análisis de SQL

Modo de optimización de análisis de acceso

Modo de optimización de ajuste de planes

Modo de optimización de comprobación de estadísticas

Detectar estadísticasanticuadas o que falten

Ajustes SQL Globales

Asesor de Ajustes SQL

Control Rend.> Asesor de Ajustes

Asesor de AccesoMemoriaEstadísticasObjetos no Validos

Asesor de Ajustes SQL: Visión GeneralEl Asesor de Ajustes SQL es el controlador principal del proceso de ajuste. Llama al optimizador automático de ajustes (ATO) para que realice cuatro tipos específicos de análisis:

• Análisis de estadísticas: El optimizador automático de ajustes comprueba todos los objetos de las consultas por si faltan estadísticas o las existentes están anticuadas y ofrece una recomendación con las estadísticas relevantes que es necesario recopilar.

• Creación de perfiles SQL: ATO verifica sus propias estimaciones y recopila información auxiliar para eliminar los errores de estimación. Genera un perfil SQL con la información auxiliar y elabora una recomendación para crearlo. Al crear un perfil SQL, se permite al optimizador de consultas generar un plan ajustado a la perfección.

• Análisis de rutas de acceso: ATO realiza una exploración para averiguar si es posible usar un nuevo índice que mejore de forma significativa el acceso a cada tabla de la consulta y, si procede, elabora las recomendaciones oportunas para crear esos índices.

• Análisis de la estructura SQL: ATO intenta identificar las sentencias SQL que utilizan planes incorrectos y formula las sugerencias pertinentes para reestructurarlas. Los cambios sugeridos pueden ser tanto sintácticos como semánticos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 88: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Recomendaciones y Opciones del Asesor de Ajustes SQL

Recomendaciones y Opciones del Asesor de Ajustes SQLUna vez iniciado el Asesor de Ajustes SQL, Enterprise Manager crea automáticamente una tarea de ajuste, siempre que el usuario disponga de los privilegios de ADVISOR apropiados para ello. Enterprise Manager muestra la tarea de ajuste y las opciones automáticas por defecto en la página SQL Tuning Options. En esta página, el usuario tiene la opción de cambiar los valores automáticos por defecto relativos a la tarea de ajuste oportuna. Es importante elegir el ámbito adecuado para realizar la tarea de ajuste. Si se elige la opción Limited, el Asesor de Ajustes SQL produce recomendaciones basadas en la comprobación de estadísticas, el análisis de rutas de acceso y el análisis de la estructura SQL. No se genera ninguna recomendación de perfil SQL con la opción Limited. En cambio, al elegir la opción Comprehensive, el Asesor de Ajustes SQL producirá las mismas recomendaciones que con la opción Limited pero también llamará al optimizador en el modo de creación de perfiles SQL para crear un perfil SQL, si procede. Con la opción Comprehensive, también puede especificar un límite de tiempo para la tarea de ajuste, que por defecto es de 60 minutos. Después de seleccionar Run SQL Tuning Advisor, configure la tarea de ajuste mediante la página SQL Tuning Options. Vuelva a la página Top SQL y haga clic en la sentencia ajustada para acceder a la página SQL Details, donde se muestra el historial de recomendaciones. En este historial se muestra la tarea de ajuste terminada. Haga clic en la tarea para ver la información general de recomendaciones. Haga clic en View Recommendations para ver los detalles de la tarea.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 89: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso del Asesor de Ajustes SQL

• Utilizar el Asesor de Ajustes SQL para analizar sentencias SQL y obtener recomendaciones de rendimiento.

• Orígenes del Asesor de Ajustes SQL para analizar– SQL principal: Analiza las sentencias SQL

principales actualmente activas– Juegos de ajustes SQL: Analiza un juego de

sentencias SQL proporcionado– Instantáneas: Analiza una instantánea– Líneas base: Analiza una línea base

Uso del Asesor de Ajustes SQLPuede utilizar el Asesor de Ajustes SQL para analizar sentencias SQL y obtener recomendaciones de rendimiento. Normalmente, ejecuta este asesor como acción de búsqueda de rendimiento de ADDM.Además, puede ejecutar el Asesor de Ajustes SQL cuando desee analizar las sentencias SQL principales que consumen la mayor parte del tiempo de CPU, de E/S y de memoria.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 90: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-12

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso del Asesor de Ajustes SQL: Ejemplo

Uso del Asesor de Ajustes SQL: EjemploPara llamar al Asesor de Ajustes SQL, realice los siguientes pasos:

1. Haga clic en Advisor Central en la región Related Links de la página inicial de la base de datos.

2. Haga clic en SQL Tuning Advisor. Aparecerá la página SQL Tuning Advisor Links.El asesor se puede ejecutar en uno de los siguientes orígenes:

- SQL principal: Analiza las sentencias SQL principales actualmente activas- Juegos de ajustes SQL: Analiza un juego de sentencias SQL proporcionado- Instantáneas: Analiza una instantánea- Líneas base: Analiza una línea base

3. Seleccione Top SQL. Seleccione un intervalo de cinco minutos para analizarlo arrastrando el recuadro sombreado por el período de tiempo de destino. Seleccione una o más sentencias para analizarlas durante el período de tiempo seleccionado.

4. Haga clic en Run SQL Tuning Advisor. Aparecerá la página SQL Tuning Options donde se mostrarán las sentencias SQL en ese intervalo. Asigne un nombre y una descripción a la tarea, seleccione Comprehensive como ámbito y seleccione Inmediately como hora de inicio. Haga clic en OK.

5. Vuelva a la página Advisor Central. El estado de las tareas del asesor aparece bajo la cabecera correspondiente en la región de resultados. Espere hasta que el estado de la tarea sea Completed. Compruebe el estado haciendo clic en Refresh en el explorador. Seleccione la tarea y haga clic en View Result. Aparecerá la página SQL Tuning Result.

6. Seleccione la sentencia SQL y haga clic en View Recommendations.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 91: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Asesor de Ajustes SQL: Estadísticas SQL

select count(*) from x where object_id < 340

select count(*) from x where object_id < 220

Cada sentencia produce un análisis pesado.

Estadísticas SQLEl Asesor de Ajustes SQL también muestra las estadísticas de un cursor que representa una sentencia SQL. Al visualizar las estadísticas de cada uno de estos cursores, se puede ver que cada una de ellas provoca un análisis pesado de la sentencia. Esto significa que no se ha encontrado una coincidencia de la sentencia sea en la caché de biblioteca. Esto se debe al uso de literales en lugar de variables ligadas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 92: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-14

Copyright © 2005, Oracle. Todos los derechos reservados.

Asesor de Ajustes SQL:Identificación de SQL Duplicados

Candidatos de variables

ligadas

Identificación de SQL DuplicadosPara identificar SQL duplicados, haga clic en Duplicate SQL en la página con separadores Performance. El SQL que se ha determinado como duplicado, excepto en cuanto a las diferencias literales y de formato, se muestran juntos. Esto le ayudará a determinar qué SQL se puede consolidar en la aplicación reduciendo así los requisitos de la caché de biblioteca y acelerando la ejecución de la sentencia.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 93: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso del Asesor deAcceso SQL

Control Rend.Asesor de Ajustes

> Asesor de AccesoMemoriaEstadísticasObjetos no Validos

Uso del Asesor de Acceso SQLPuede utilizar el Asesor de Acceso SQL para ajustar el esquema y mejorar el rendimiento de las consultas. Este asesor precisa que identifique una carga de trabajo SQL, que sea un juego representativo de sentencias SQL que acceda al esquema. Puede seleccionar la carga de trabajo de distintos orígenes, entre los que se incluyen la actividad SQL actual y reciente, un repositorio SQL o una carga de trabajo definida por el usuario como, por ejemplo, de un entorno de desarrollo.El Asesor de Acceso SQL puede ofrecer recomendaciones como la creación de índices y vistas materializadas para mejorar el rendimiento de las consultas para la carga de trabajo concreta.Para llamar al Asesor de Acceso SQL, realice los siguientes pasos:

1. Haga clic en Advisor Central en la región Related Links de la página inicial de la base de datos.

2. Haga clic en SQL Access para iniciar un asistente. Aparecerá la página SQL Access Advisor: Workload Source.

3. Especifique el origen de carga de trabajo y haga clic en Next. Se mostrará la página SQL Access Advisor: Recommendation Options.

4. Indique si desea que el asesor recomiende índices, vistas materializadas o ambos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 94: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-16

Uso del Asesor de Acceso SQL (continuación)5. Especifique el modo Limited o Comprehensive. El modo Limited se ejecuta más

rápidamente al concentrarse en sentencias de mayor costo. 6. Haga clic en Next. Aparecerá la página SQL Access Advisor: Schedule. Acepte el valor

por defecto de ejecución inmediata o planifique la ejecución para más tarde. 7. Haga clic en Next. Aparecerá la página SQL Access Advisor: Review. 8. Revise las opciones seleccionadas y haga clic en Submit para iniciar el trabajo.

Los resultados se publican en la página Advisor Central. Las recomendaciones del Asesor de Acceso SQL se ordenan por beneficio de costo. Por ejemplo, una recomendación puede constar de un archivo de comandos SQL con una o más sentencias CREATE INDEX, que puede implementar haciendo clic en Schedule Implementation.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 95: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Gestión de los Componentesde la Memoria

• Gestión Automática de Memoria Compartida:– Se recomienda para simplificar la gestión– Le permite especificar la memoria SGA total a través de un

parámetro de inicialización– Le permite al servidor de Oracle gestionar la cantidad de

memoria asignada al pool compartido, al pool Java, a la caché de buffers, al pool de Streams y al pool grande

• Definición manual de la gestión de memoria compartida:– Fija un tamaño para los componentes mediante varios

parámetros de inicialización individuales– Utiliza el Asesor de Memoria para realizar

recomendaciones

Control Rend.Asesor de AjustesAsesor de Acceso

> MemoriaEstadísticasObjetos no Validos

Gestión de los Componentes de la MemoriaSGA está formado por varios componentes. El tamaño de muchos de estos componentes los puede gestionar el servidor de Oracle a través del uso de la función de gestión automática de memoria compartida (ASMM). Con ello, se simplifican las tareas de gestión de la memoria.Asimismo, puede gestionar el tamaño de los componentes de manera manual mediante la definición de otros parámetros de inicialización. Si, posteriormente, el servidor de Oracle le notifica la existencia de un problema de rendimiento relacionado con el tamaño del Área Global Compartida (SGA) o del Área Global de Programa (PGA), puede utilizar el Asesor de Memoria para determinar valores nuevos y adecuados. El Asesor de Memoria puede modelar el efecto de los cambios realizados en los parámetros. También puede especificar que el servidor de Oracle ajuste de manera automática los parámetros de memoria importantes cuando cambien las condiciones. Se recomienda el ajuste automático.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 96: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Activación de la Gestión Automáticade Memoria Compartida (ASMM)

Haga clic en Enable para activar la gestión

automática de memoria compartida.

Activación de la Gestión Automática de Memoria CompartidaSi no ha activado esta función al configurar la base de datos, puede activarla realizando lossiguientes pasos:

1. Haga clic en Memory Parameters en la región Instance de la página Administration.2. Haga clic en Enable.

Aparece la página Enable Automatic Shared Memory Management.3. Especifique el tamaño total del área SGA. Haga clic en OK.

Puede aumentar el tamaño total del área SGA posteriormente si aumenta el valor del parámetro de inicialización SGA_TARGET, pero no podrá definirlo por encima del valor especificado por el parámetro SGA_MAX_SIZE. Para obtener más información, consulte Oracle Database Administrator’s Guide.Nota: Oracle le recomienda utilizar la gestión automática de memoria compartida para simplificar las tareas de gestión de la memoria.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 97: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-19

Activación de la Gestión Automática de Memoria Compartida (continuación)Si ASMM está activada, en principio no deberá definir los parámetros de inicialización de los componentes específicos para los que gestiona la memoria. Si después de ver los efectos de las asignaciones de ASMM, decide que desea ajustar las asignaciones de determinados componentes, entonces podrá especificar los valores para esos componentes. Estos valores setratan como tamaños mínimos de memoria para los respectivos componentes. De esta forma, se limita la cantidad de memoria disponible para el ajuste automático pero la capacidad estarádisponible si el entorno necesita un tamaño especial que ASMM no incorpore. Los parámetros de inicialización que hay que tener en cuenta son los siguientes:• SHARED_POOL_SIZE• LARGE_POOL_SIZE• JAVA_POOL_SIZE• DB_CACHE_SIZE• STREAMS_POOL_SIZE

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 98: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-20

Copyright © 2005, Oracle. Todos los derechos reservados.

Definición Manual de la Gestiónde Memoria Compartida

Definición Manual de la Gestión de Memoria CompartidaSi no utiliza la gestión automática de memoria compartida, debe proporcionar los valores para cada componente del SGA durante la instalación y la creación de base de datos. Realice lo siguiente:

1. Acceda a la página Memory Parameters haciendo clic en el enlace Memory Parameters en la región Database Configuration de la página Administration.

2. Para llamar a uno de los asesores de memoria, haga clic en Advice. 3. Haga clic en Help para visualizar la ayuda en pantalla y obtener información adicional

sobre cómo funciona el Asesor de Memoria.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 99: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso del Asesor de Memoria

Uso del Asesor de MemoriaEl Asesor de Memoria ayuda a ajustar el tamaño de las estructuras de memoria. Puede utilizar este asesor sólo cuando esté desactivado el ajuste automático de la memoria.El Asesor de Memoria incluye tres asesores que ofrecen recomendaciones sobre las siguientes estructuras de memoria:

• Pool compartido del Área Global del Sistema (SGA)• Caché de buffers de SGA• Área Global de Programa (PGA)

Para llamar a los asesores de memoria, realice los siguientes pasos:1. Haga clic en Advisor Central en la región Related Links de la página inicial de la base de

datos.2. Haga clic en Memory Advisor en la página Advisor Central. Aparecerá la página Memory

Parameters. Esta página proporciona un desglose del uso de la memoria para SGA.Nota: El valor de gestión automática de memoria compartida debe estar desactivado para poder ejecutar el asesor.

3. Haga clic en Advice junto al valor de Shared Pool o de Buffer Cache para llamar a los asesores correspondientes.

4. Haga clic en PGA para acceder a la página de propiedades de PGA. Haga clic en Advice para llamar al asesor de PGA.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 100: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-22

Copyright © 2005, Oracle. Todos los derechos reservados.

V$SYSTEM_EVENT• event• total_waits• total_timeouts• time_waited• average_wait• time_waited_micro

Estadísticas de RendimientoDinámicas

V$SYSSTAT• statistic#• name• class• value• stat_id

V$SESSION_EVENT• sid• event• total_waits• total_timeouts• time_waited• average_wait• max_wait• time_waited_micro• event_id

V$SESSTAT• sid• statistic#• value

V$SERVICE_EVENT• service_name• service_name_hash• event• event_id• total_waits• total_timeouts• time_waited• average_wait• time_waited_micro

V$SERVICE_STATS• service_name_hash• service_name• stat_id• stat_name• value

Del Sistema Específica de la Sesión Específica del Servicio

Estadísticas acumulativas

Eventos de espera

…Asesor de AccesoMemoria

> EstadísticasObjetos no Validos

Estadísticas de Rendimiento DinámicasPara diagnosticar eficazmente los problemas de rendimiento, deben estar disponibles las estadísticas. Oracle genera muchos tipos de estadísticas para distintos niveles de granularidad. A nivel de sistema, de sesión y de servicio, se calculan tanto los eventos de espera como las estadísticas acumulativas. La fila superior de las vistas son las estadísticas acumulativas. La fila inferior se compone de las vistas de eventos de espera. Cuando se analiza un problema de rendimiento en cualquiera de estos ámbitos, normalmente se observa el cambio producido en las estadísticas (valor delta) durante el período de tiempo que le interesa. Todos los eventos de espera posibles están catalogados en la vista V$EVENT_NAME. Todas las estadísticas están catalogadas en la vista V$STATNAME. Dispone de alrededor de 360 estadísticas en la base de datos Oracle.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 101: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-23

Estadísticas de Rendimiento Dinámicas (continuación)Visualización de Estadísticas del SistemaPor ejemplo:

SQL> SELECT name, class, value FROM v$sysstat;NAME CLASS VALUE------------------------------- ------ ----------...table scans (short tables) 64 135116table scans (long tables) 64 250table scans (rowid ranges) 64 0table scans (cache partitions) 64 3table scans (direct read) 64 0table scan rows gotten 64 14789836table scan blocks gotten 64 558542...

Las estadísticas del sistema se clasifican por tema de ajuste y propósito de la depuración. Las clases incluyen la actividad general de la instancia, la actividad del buffer de redo log, el bloqueo, la actividad de la caché de buffers de la base de datos, etc.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 102: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-24

Copyright © 2005, Oracle. Todos los derechos reservados.

Instancia/Base de DatosV$DATABASEV$INSTANCEV$PARAMETERV$SPPARAMETERV$SYSTEM_PARAMETERV$PROCESSV$BGPROCESSV$PX_PROCESS_SYSSTATV$SYSTEM_EVENT

Vistas de Solución de Problemas y de Ajustes

DiscoV$DATAFILEV$FILESTATV$LOGV$LOG_HISTORYV$DBFILEV$TEMPFILEV$TEMPSEG_USAGEV$SEGMENT_STATISTICS

ContenciónV$LOCKV$UNDOSTATV$WAITSTATV$LATCH

MemoriaV$BUFFER_POOL_STATISTICSV$LIBRARYCACHEV$SGAINFOV$PGASTAT

Vistas de Solución de Problemas y de AjustesLa diapositiva muestra algunas de las vistas a las que puede acceder para determinar la causa de los problemas de rendimiento o para analizar el estado actual de la base de datos.Para obtener una descripción completa de estas vistas, consulte Oracle Database ReferenceManual.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 103: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-25

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetos No Válidos oNo Utilizables

Efecto en el Rendimiento:• Los objetos de código PL/SQL se recompilan.• Los índices se vuelven a crear.

Control Rend.Asesor de AjustesAsesor de AccesoMemoriaEstadísticas

> Objetos no Validos

Objetos No Válidos o No UtilizablesEl estado actual de determinados objetos de base de datos se puede ver si se consulta el diccionario de datos, que se describe en la lección titulada “Gestión de Objetos de Esquema”. Si encuentra objetos PL/SQL con un estado INVALID, la primera pregunta que debe responder es si “este objeto ha tenido alguna vez el estado VALID”. A menudo, un desarrollador de aplicaciones no realiza la limpieza del código que no funciona. Si el objeto PL/SQL no es válido debido a un error de código, poco se puede hacer hasta que se resuelve el error. Si el procedimiento fue válido en algún momento del pasado y se ha convertido en no válido recientemente, tiene dos opciones para resolver el problema:

• No hacer nada. La mayor parte de los objetos PL/SQL se recompilará automáticamente si es necesario cuando se les llame. Los usuarios experimentarán un breve retraso mientras se recompilan los objetos. (En la mayor parte de los casos apenas se advierte este retraso.)

• Recompile el objeto no válido manualmente.Los objetos PL/SQL no válidos se pueden recompilar manualmente con Enterprise Manager o através de comandos SQL:

ALTER PROCEDURE HR.add_job_history COMPILE;

La recompilación manual de paquetes PL/SQL necesita dos pasos:ALTER PACKAGE HR.maintainemp COMPILE;ALTER PACKAGE HR.maintainemp COMPILE BODY;

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 104: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-26

Objetos No Válidos o No Utilizables (continuación)Los índices no utilizables se convierten en válidos reconstruyéndolos para volver a calcular los punteros. La reconstrucción de un índice no utilizable vuelve a crear el índice en una nueva ubicación y después borra el índice no utilizable. Este proceso se puede llevar a cabo con Enterprise Manager o a través de comandos SQL:

ALTER INDEX HR.emp_empid_pk REBUILD;ALTER INDEX HR.emp_empid_pk REBUILD ONLINE;ALTER INDEX HR.email REBUILD TABLESPACE USERS;

Si se omite la cláusula TABLESPACE, el índice se vuelve a crear en el mismo tablespace en el que ya existe. La cláusula REBUILD ONLINE permite a los usuarios seguir actualizando la tabla de índices mientras tiene lugar la reconstrucción. (Sin la palabra clave ONLINE, los usuarios deben esperar a que termine la reconstrucción antes de llevar a cabo DML en la tabla afectada.)Enterprise Manager utiliza la acción de reorganización para reparar un índice UNUSABLE.Nota: La reconstrucción de un índice necesita espacio libre disponible para el proceso. Compruebe que haya espacio suficiente antes de intentar la reconstrucción. Enterprise Manager comprueba los requisitos de espacio automáticamente.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 105: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-27

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Utilizar Enterprise Manager para controlar el

rendimiento• Ajustar SQL mediante el Asesor de Ajustes SQL• Ajustar SQL mediante el Asesor de Acceso SQL• Utilizar la gestión automática de memoria

compartida• Utilizar el Asesor de Memoria para ajustar el

tamaño de los buffers de memoria• Visualizar vistas dinámicas relacionadas con el

rendimiento• Solucionar problemas de objetos no válidos o no

utilizables

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 106: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 13-28

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica:Control y Mejora del Rendimiento

En esta práctica se abordan los siguientes temas:• Detección y reparación de índices no utilizables• Uso del Asesor de Ajustes SQL• Uso de la página Performance en Enterprise

Manager

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 107: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Conceptos de Copia de Seguridad y Recuperación

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 108: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para lo siguiente:• Identificar los tipos de fallos que se pueden

producir en la base de datos Oracle• Describir las formas de ajustar la recuperación de

instancias• Identificar la importancia de los puntos de control,

archivos redo log y archivos archive log• Configurar el modo ARCHIVELOG

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 109: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Parte de su Trabajo

Las funciones del administrador son:• Proteger la base de datos contra fallos siempre

que sea posible• Aumentar el tiempo medio entre fallos (MTBF)• Disminuir el tiempo medio para la recuperación

(MTTR)• Minimizar la pérdida de datos

Parte de su TrabajoEl objetivo del administrador de la base de datos (DBA) es asegurarse de que la base de datos está abierta y disponible cuando los usuarios la necesiten. Para conseguirlo, el DBA (que suele trabajar con el Administrador del Sistema):

• Se anticipa y trabaja para evitar causas comunes de fallo.• Trabaja para aumentar el tiempo medio entre fallos (MTBF), garantizando que el hardware

sea lo más fiable posible, que los componentes críticos estén protegidos por redundancia y que el mantenimiento del sistema operativo se realice a tiempo. La base de datos Oracle proporciona opciones de configuración avanzadas para aumentar el MTBF, que incluyen:

- Real Application Clusters (se tratará en el curso Base de Datos Oracle 10g: Real Application Clusters)

- Streams (se tratará en el curso Base de Datos Oracle 10g: Implementación de Streams)

• Disminuye el tiempo medio para la recuperación (MTTR), mediante la realización de procedimientos de recuperación con antelación, y la configuración de copias de seguridad para que estén disponibles de inmediato cuando sean necesarias.

• Minimiza la pérdida de datos. Los DBA, que siguen las recomendaciones aceptadas, pueden configurar sus bases de datos para que ninguna transacción confirmada jamás se pierda. Entre las entidades que permiten garantizar esto se incluyen:

- Los archivos archive log (se tratarán en esta lección)- Las bases de datos en espera y Oracle Data Guard (se tratarán en el curso Base de

Datos Oracle 10g: Administración de Data Guard)

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 110: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Categorías de Fallos

Los fallos normalmente se pueden dividir en las siguientes categorías:• Fallo de sentencia• Fallo de proceso de usuario• Fallo de red• Error del usuario• Fallo de la instancia• Fallo del medio físico

Categorías de FallosLos fallos se pueden dividir en unas amplias categorías:

• Fallo de sentencia: Fallo de una única operación de base de datos (select, insert, update, delete).

• Fallo de proceso de usuario: Fallo de una única sesión de base de datos.• Fallo de red: Se pierde la conectividad a la base de datos.• Error del usuario: Un usuario termina correctamente una operación, pero ésta no es

correcta (borrado de una tabla o introducción de datos erróneos).• Fallo de la instancia: La instancia de la base de datos se cierra de forma inesperada.• Fallo del medio físico: Se pierden uno o más archivos de base de datos (es decir, se han

suprimido los archivos o el disco ha fallado).

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 111: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Fallo de Sentencia

Posibles SolucionesProblemas Típicos

Trabaje con los desarrolladores para corregir errores del programa.

Errores de lógica en aplicaciones

• Active la asignación de espacio reanudable.

• Aumente la cuota de propietario.• Agregue espacio al tablespace.

Fallo al intentar asignar espacio

Proporcione privilegios de objeto o del sistema adecuados.

Intentos para realizar operaciones con privilegios insuficientes

Trabaje con los usuarios para validar y corregir los datos.

Intentos de introducción de datos no válidos en una tabla

Fallo de SentenciaCuando falla una única operación de base de datos, la participación del DBA puede ser necesaria para corregir errores con privilegios de usuario o de asignación de espacio de la base de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 112: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-6

Copyright © 2005, Oracle. Todos los derechos reservados.

Fallo de Proceso de Usuario

Posibles SolucionesProblemas TípicosNormalmente no es necesario que un DBA realice una acción para resolver fallos de proceso de usuario. Los procesos en segundo plano de la instancia realizan un rollback de cambios sin confirmar y liberan los bloqueos.

Observe lo que sucede.

Un usuario realiza una desconexión anormal.

La sesión de un usuario se termina de forma anormal.

Un usuario sufre un error del programa que termina la sesión.

Fallo de Proceso de UsuarioLos procesos de usuario que se desconectan de forma anormal de la instancia pueden tener trabajo sin confirmar en curso al que es necesario realizar un rollback. El proceso en segundo plano de control de procesos (PMON) sondea periódicamente los procesos de servidor para garantizar que sus sesiones siguen conectadas. Si PMON encuentra un proceso de servidor cuyo usuario ya no está conectado, se recupera de cualquier transacción en curso. También realiza un rollback de cambios sin confirmar y libera los bloqueos producidos por la sesión fallida.No debería ser necesaria la intervención de un DBA para la recuperación de un fallo de proceso de usuario, pero el administrador debe observar lo que sucede. Uno o dos usuarios que se desconectan de forma anormal no debe ser motivo de preocupación. Es normal un pequeño porcentaje de fallos de procesos de usuario. Los fallos constantes y sistémicos indican otros problemas. Un gran porcentaje de desconexiones anormales puede indicar que es necesaria la formación de usuarios (lo que incluye enseñarles a desconectarse en lugar de tan sólo terminar sus programas). También puede ser un indicio de problemas en la red o en aplicaciones.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 113: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-7

Copyright © 2005, Oracle. Todos los derechos reservados.

Fallo de Red

Posibles SolucionesProblemas Típicos

Configure una conexión de red de copia de seguridad.

Fallo de la conexión de red.

Configure varias tarjetas de red.Fallo de la tarjeta de interfaz de red (NIC).

Configure un listener de copia de seguridad y operaciones de failover de tiempo de conexión.

Fallo del listener.

Fallo de RedLa mejor solución para fallos de red es proporcionar rutas de acceso redundantes para las conexiones de red. Los listeners de copia de seguridad, la conexión de red y las tarjetas de interfaz de red reducen la posibilidad de fallos de red que afecten a la disponibilidad del sistema.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 114: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Error del Usuario

Posibles SolucionesCausas Típicas

Recupere la tabla de la papelera de reciclaje.

Un usuario borra una tabla.

Realice un rollback o utilice una consulta de flashback para la recuperación.

Un usuario suprime o modifica datos involuntariamente.

Oracle LogMiner

Error del UsuarioPuede que el usuario suprima o modifique datos involuntariamente. Cuando esto suceda, es posible que el DBA tenga que ayudar a los usuarios en la recuperación del error. Si los usuarios aún no han confirmado ni salido del programa, pueden simplemente realizar un rollback de la operación. Si los usuarios ya han confirmado los cambios, se pueden utilizar consultas de flashback para determinar cuáles eran los valores anteriores (y, a continuación, se pueden actualizar los datos para restaurar la información original):

SQL> SELECT salary FROM employees WHERE employee_id=100;SALARY------25SQL> SELECT salary FROM employees2 AS OF TIMESTAMP(SYSTIMESTAMP-INTERVAL’10’ minute)3 WHERE employee_id=100;SALARY------24000

En los casos en los que no son posibles las consultas de flashback porque se ha superado el período de retención de deshacer, el DBA todavía puede recuperar la información original mediante Oracle LogMiner.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 115: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-9

Error del Usuario (continuación)Puede utilizar Oracle LogMiner para consultar redo logs en línea y archivados mediante una interfaz SQL. Los datos de transacción pueden mantenerse en redo logs en línea durante más tiempo que en los segmentos de deshacer y, si ha configurado el archivado de información de redo, ésta se mantendrá hasta que suprima los archivos archivados.Oracle LogMiner se trata en el curso Base de Datos Oracle 10g: Taller de Administración II y en el manual de referencia Oracle Database: Utilities.Los usuarios que borren una tabla pueden recuperarla de la papelera de reciclaje mediante una operación de flashback de la tabla anterior al borrado. Para obtener más instrucciones, consulte la lección titulada “Realización de Flashback”.Si la papelera de reciclaje ya se ha depurado o si el usuario borró la tabla con la opción PURGE, aún se puede recuperar la tabla borrada mediante la recuperación point-in-time (PITR) si la base de datos se ha configurado de forma adecuada.PITR se trata en el curso Base de Datos Oracle 10g: Taller de Administración II y en Oracle Database: Backup and Recovery Advanced User’s Guide.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 116: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Fallo de la Instancia

Fallo de uno de los procesos en segundo plano

Posibles SolucionesCausas Típicas

Procedimientos de cierre de emergencia

Fallo de hardware

Reinicie la instancia mediante el comando “startup”. La recuperación de un fallo de instancia es automática e incluye la aplicación de transacciones pendientes de los redo logs y la realización de un rollback de transacciones sin confirmar.

Investigue las causas del fallo mediante el log de alertas, los archivos de rastreo y Enterprise Manager.

Cortes en el suministro eléctrico

Fallo de la InstanciaSe produce un fallo de la instancia cuando la instancia de la base de datos se cierra antes de la sincronización de todos los archivos de base de datos. Se puede producir un fallo de la instancia debido a un fallo de hardware o de software, o bien por el uso de los comandos de cierre de emergencia SHUTDOWN ABORT y STARTUP FORCE.La participación del administrador en la recuperación del fallo de la instancia se suele limitar a reiniciar la instancia y a trabajar para evitar que se vuelva a producir.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 117: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Procesos en Segundo Plano y Recuperación: Punto de Control (CKPT)

CKPT es responsable de:• La señalización DBWn en los

puntos de control• La actualización de las

cabeceras de los archivos de datos con información de los puntos de control

• La actualización de los archivos de control con información de los puntos de control

Punto decontrol(CKPT)

Escritorde la basede datos(DBWn)

SGA

Caché debuffers de la

base de datos

Archivode control

Archivosde datos

Procesos en Segundo Plano y Recuperación: Punto de Control (CKPT)Para comprender la recuperación de instancias, es necesario entender el funcionamiento de determinados procesos en segundo plano.Cada tres segundos (o menos), el proceso CKPT almacena datos en el archivo de control para documentar qué bloques de datos modificados ha escrito DBWn del SGA al disco. Esto se denomina “punto de control”. El objetivo de un punto de control consiste en identificar eselugar en el archivo redo log en línea en el que va a empezar la recuperación de la instancia (denominado “posición de punto de control”).En el caso de un cambio de log, el proceso CKPT también escribe esta información de punto de control en las cabeceras de los archivos de datos.Los puntos de control existen por los siguientes motivos:

• Para asegurar que los bloques de datos modificados en memoria se escriben en el disco de forma regular para que los datos no se pierdan en el caso de que se produzca un fallo del sistema o de la base de datos.

• Para reducir el tiempo que se necesita para recuperar instancias. Se necesita procesar únicamente las entradas del archivo redo log que sigan al último punto de control para que se puedan recuperar.

• Para garantizar que todos los datos confirmados se han escrito en los archivos de datos durante el cierre.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 118: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-12

Procesos en Segundo Plano y Recuperación: Punto de Control (CKPT) (continuación)

En la información de punto de control que escribe el proceso CKPT se incluye la posición de punto de control, el número de cambio del sistema, la ubicación en el archivo redo log en línea para empezar la recuperación, la información sobre los logs, etc. Nota: El proceso CKPT no escribe bloques de datos en el disco ni bloques de redo en los archivos redo log en línea.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 119: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Procesos en Segundo Plano y Recuperación: Archivos Redo Log y Escritor de Log

Los archivos redo log:• Registran cambios de la

base de datos• Se deben multiplexar como

protección ante pérdidasEl escritor de log escribe:• Durante la confirmación• Cuando está un tercio lleno• Cada tres segundos• Antes de que DBWn escriba

Grupo 3

Escritorde log

(LGWR)

Grupo 1 de redo log

Grupo 2 de redo log

Buffer deredo log

SGA

Grupo 3 de redo log

Procesos en Segundo Plano y Recuperación: Archivos Redo Log y Escritor de LogLos archivos redo log registran cambios en la base de datos como resultado de las transacciones y las acciones internas del servidor de Oracle. (Una transacción es una unidad de trabajo lógica, que consta de una o más sentencias SQL que ejecuta un usuario.) Los archivos redo log protegen la base de datos de pérdidas de integridad debidas a fallos del sistema provocados porinterrupciones de alimentación, fallos de disco, etc. Los archivos redo log se deben multiplexar para garantizar que la información almacenada en ellos no se pierda en caso de un fallo de disco.El redo log se compone de grupos de archivos redo log. Un grupo está formado por un archivo redo log y sus copias multiplexadas. Cada copia idéntica se considera miembro de dicho grupo y cada grupo se identifica mediante un número. El proceso de escritor de log (LGWR) escribe registros de redo desde el buffer de redo log a todos los miembros de un grupo de redo logs hasta que se llena el archivo o se solicita una operación de cambio de log. A continuación, se cambia y se escribe en los archivos del siguiente grupo. Los grupos de redo logs se utilizan de forma circular.Práctica recomendada: Si es posible, los archivos redo log multiplexados deben residir en discos distintos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 120: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-14

Copyright © 2005, Oracle. Todos los derechos reservados.

Procesos en Segundo Plano y Recuperación: Proceso de Archivado (ARCn)

El proceso de archivado (ARCn): • Es un proceso en segundo

plano opcional• Archiva automáticamente los

archivos redo log en línea cuando se ha definido el modo ARCHIVELOG para la base de datos

• Conserva el registro de todos los cambios realizados en la base de datos

Escritorde log

(LGWR)

Proceso dearchivado

(ARCn)

Buffer deredo log

SGA

Redo log en línea

Archivosarchive log

Procesos en Segundo Plano y Recuperación: Proceso de Archivado (ARCn)ARCn es un proceso en segundo plano opcional. Sin embargo, es crucial para recuperar una base de datos tras la pérdida de un disco. Conforme se llenan los archivos redo log en línea, la instancia de Oracle empieza a escribir en el siguiente archivo redo log en línea. El proceso de cambio de un archivo redo log en línea a otro se denomina cambio de log. El proceso ARCnempieza a realizar copias de seguridad o a archivar el grupo de log lleno cada vez que se cambia de log. Archiva automáticamente el archivo redo log en línea antes de que se pueda volver a utilizar el log para que todos los cambios realizados en la base de datos se mantengan. Esto permite la recuperación de la base de datos hasta el punto de fallo, incluso si la unidad de disco está dañada.Una de las decisiones importantes que un DBA debe tomar es si debe configurar la base de datos para que funcione en el modo ARCHIVELOG o en el modo NOARCHIVELOG.

• En el modo NOARCHIVELOG, los archivos redo log en línea se sobrescriben cada vez que se produce un cambio de log.

• En el modo ARCHIVELOG, los grupos inactivos de archivos redo log en línea llenos se deben archivar antes de que se puedan volver a utilizar.

Nota: El modo ARCHIVELOG es esencial para la mayoría de las estrategias de copia de seguridad (y es muy sencillo de configurar).

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 121: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Recuperación de Instancias

La recuperación de fallos o de instancias:• Se produce por intentos de apertura de una base

de datos cuyos archivos no se sincronizan al cerrar

• Es automática• Utiliza información almacenada en los grupos de

redo logs para sincronizar los archivos• Implica dos operaciones distintas:

– Aplicación de transacciones pendientes: Los archivos de datos se restauran a su estado anterior al fallo de la instancia.

– Realización de un rollback: Los cambios realizados pero no confirmados vuelven a su estado original.

Recuperación de InstanciasLa base de datos Oracle 10g se recupera automáticamente de los fallos de instancia. Todo lo que tiene que hacer el DBA es iniciar la instancia de forma normal. La instancia monta los archivos de control e intenta abrir los archivos de datos. Cuando descubre que los archivos de datos no se han sincronizado en el momento del cierre, la instancia utiliza información incluida en los grupos de redo logs para aplicar las transacciones pendientes en el momento del cierre en los archivos de datos y, a continuación, (puesto que también se aplicarán los cambios pendientes en el tablespace de deshacer) realizar un rollback de transacciones sin confirmar.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 122: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-16

Copyright © 2005, Oracle. Todos los derechos reservados.

Fases de la Recuperación de Instancias

1. Archivos de datos no sincronizados

2. Aplicación de transacciones pendientes (redo)

3. Datos confirmados y sin confirmar en archivos

4. Realización de rollback (deshacer)

5. Datos confirmados en archivos

Base de datos

Deshacer

Instancia

Procesosen segundo

plano

Archivode datosSCN: 99

Archivode datosSCN: 129

Archivode datosSCN: 140

Archivo de Control

SCN: 143

Archivo de Control

SCN: 143

Grupo deredo logs

SCN: 74-101

Grupo de redo logs

SCN: 102-143

SGA

Fases de la Recuperación de InstanciasPara que una instancia abra un archivo de datos, el número de cambio del sistema (SCN) incluido en la cabecera de dicho archivo debe coincidir con el SCN actual almacenado en los archivos de control de la base de datos.Si los números no coinciden, la instancia aplica datos de redo de los redo logs en línea, “rehaciendo” por orden las transacciones hasta que los archivos de datos estén actualizados. Después de sincronizar todos los archivos de datos con los archivos de control, se abre la base de datos y los usuarios pueden conectarse.Al aplicar los datos de redo, se aplican todas las transacciones para poner la base de datos en el estado que tenía en el momento del fallo. Esto suele incluir transacciones que están en curso pero que aún no se han confirmado. Una vez abierta la base de datos, se realiza un rollback de dichas transacciones sin confirmar. Al final de la fase de rollback de recuperación de la instancia, los archivos de datos contienen sólo datos confirmados.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 123: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Ajuste de la Recuperación de Instancias

• Durante la recuperación de instancias, las transacciones entre la posición de punto de control y el final de redo log se deben aplicar a los archivos de datos.

• Para ajustar la recuperación de instancias, controle la diferencia entre la posición de punto de control y el final de redo log.

Final de redo logPosición de punto de control

Transacciones

Recuperación de instancias

Ajuste de la Recuperación de InstanciasLa información de transacciones siempre se registra en los grupos de redo logs antes de que la instancia devuelva commit complete para una transacción. La información de los grupos de redo logs garantiza que la transacción pueda recuperarse en caso de fallo. También es necesario escribir la misma información de transacciones en el archivo de datos. La escritura del archivo de datos suele suceder poco después de que la información se registre en los grupos de redo logs porque el proceso de escritura del archivo de datos es mucho más lento que las escrituras de redo. (Las escrituras aleatorias en archivos de datos son más lentas que las escrituras en serie en archivos redo log.)Cada tres segundos, el proceso de punto de control registra información en el archivo de control acerca de la posición del punto de control en el redo log. Por lo tanto, la base de datos Oracle sabe que todas las entradas de redo log registradas antes de este punto no son necesarias para la recuperación de la base de datos. En el gráfico de la diapositiva, los bloques rayados aún no se han escrito en el disco.El tiempo necesario para la recuperación de instancias es el mismo que para pasar los archivos de datos de su último punto de control al último SCN registrado en el archivo de control. El administrador controla dicho tiempo mediante la definición de un destino de MTTR (en segundos) y mediante el tamaño de los grupos de redo logs. La distancia entre la posición del punto de control y el final del grupo de redo logs nunca puede ser superior al 90% del grupo de redo log más pequeño.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 124: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso del Asesor de MTTR

• Especifique el tiempo deseado en segundos o minutos.• El valor por defecto es 0 (desactivado).• El valor máximo es de 3.600 segundos (una hora).

Asesor de MTTRSi necesita ayuda para definir el destino de MTTR, seleccione Enterprise Manager > Administration > Advisor Central > MTTR Advisor. Este asesor convierte el valor FAST_START_MTTR_TARGET en varios parámetros para permitir que se recupere la instancia en el momento deseado o lo más cercano posible a ese momento.La definición explícita del parámetro FAST_START_MTTR_TARGET en 0 desactiva el ajuste automático de puntos de control. La definición explícita del parámetro FAST_START_MTTR_TARGET en un valor distinto a 0 también activa el asesor de redo log.El parámetro FAST_START_MTTR_TARGET se debe definir en un valor que soporte el acuerdo de nivel de servicio del sistema. Si el valor del destino de MTTR es pequeño, aumenta la sobrecarga de E/S debido a escrituras adicionales de archivo de datos (lo que afecta al rendimiento). Sin embargo, si el valor del destino de MTTR es demasiado grande, la instancia tarda demasiado en recuperarse tras un fallo.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 125: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-19

Copyright © 2005, Oracle. Todos los derechos reservados.

Fallo del Medio Físico

Fallo del controlador de disco

Supresión o corrupción de un archivo de base de datos

Posibles SolucionesCausas Típicas1. Restaure el archivo afectado a

partir de la copia de seguridad.2. Si es necesario, informe a la

base de datos sobre una nueva ubicación del archivo.

3. Si es necesario, recupere el archivo aplicando la información de redo.

Fallo de la unidad de disco

Fallo del Medio FísicoOracle Corporation define el fallo del medio físico como cualquier fallo resultante de la pérdida o corrupción de uno o más archivos de base de datos (archivo de datos, de control o redo log).Para la recuperación de un fallo del medio físico es necesario restaurar y recuperar los archivos que falten. Para garantizar que la base de datos se pueda recuperar de un fallo del medio físico, siga las recomendaciones que se indican en las páginas siguientes.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 126: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-20

Copyright © 2005, Oracle. Todos los derechos reservados.

Configuración de Recuperabilidad

Para configurar la base de datos para una máxima recuperabilidad, debe:• Planificar copias de seguridad periódicas• Multiplexar los archivos de control• Multiplexar los grupos de redo logs• Retener copias archivadas de redo logs

Configuración de RecuperabilidadPara proporcionar la mejor protección de los datos, debe realizar lo siguiente:

• Planificar copias de seguridad periódicas: La mayoría de fallos del medio físico necesitan que restaure el archivo perdido o dañado a partir de una copia de seguridad.

• Multiplexar los archivos de control: Todos los archivos de control asociados a una base de datos son idénticos. La recuperación de la pérdida de un único archivo de control no es difícil. La recuperación de la pérdida de todos los archivos de control supone un mayor reto. Para protegerse contra la pérdida de todos los archivos de control, tenga al menos tres copias de dichos archivos.

• Multiplexar los grupos de redo logs: Para recuperarse del fallo de la instancia o del medio físico, se utiliza la información de redo log para aplicar los cambios pendientes de archivos de datos hasta la última transacción confirmada. Si los grupos de redo logs confían en un único archivo redo log, la pérdida de dicho archivo significa que es probable que se pierdan esos datos. Asegúrese de que existen al menos tres copias de cada grupo de redo logs, si es posible, en controladores de disco distintos.

• Retener copias archivadas de redo logs: Si un archivo se pierde y se restaura de una copia de seguridad, la instancia debe aplicar la información de redo para actualizar el archivo hasta el último SCN incluido en el archivo de control. Con el valor por defecto, la base de datos sobrescribe la información de redo después de que se haya escrito en los archivos de datos. La base de datos se puede configurar para que retenga la información de redo en copias archivadas de los redo logs. Esto se denomina poner la base de datos en modo ARCHIVELOG.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 127: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Archivos de Control

Protéjase contra un fallo de la base de datos mediante la multiplexión de archivos de control. Se recomienda que la base de datos tenga:• Al menos dos copias (Oracle recomienda tres) del

archivo de control• Cada copia en un disco independiente• Al menos una copia en un controlador de disco

independiente

Archivos deControl

Archivos de ControlUn archivo de control es un pequeño archivo binario que describe la estructura de la base de datos. Debe estar disponible para que el servidor de Oracle escriba en él siempre que se monte o se abra la base de datos. Sin este archivo, la base de datos no se puede montar y es necesario recuperar o volver a crear el archivo de control. La base de datos debe tener un mínimo de dos archivos de control (es preferible tres) en distintos discos para minimizar el impacto de la pérdida de un archivo de control.Si la base de datos se ha creado con el Asistente de Configuración de Bases de Datos (DBCA), tendrá tres archivos de control (a no ser que lo haya modificado antes de crear la base de datos).La pérdida de un único archivo de control provoca que la instancia falle porque todos los archivos de control deben estar disponibles en todo momento, aunque la recuperación es tan sencilla como copiar uno de los demás archivos de control. Es un poco más difícil recuperarse de la pérdida de todos los archivos de control, pero no suele ser de gran repercusión.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 128: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-22

Copyright © 2005, Oracle. Todos los derechos reservados.

Archivos Redo Log

Multiplezar grupos de redo logs para protegerse contra fallos del medio físico y la pérdida de datos. Se recomienda que los grupos de redo logs tengan:• Al menos dos miembros (archivos) por grupo• Cada miembro en una unidad de disco independiente• Cada miembro en un controlador de disco

independiente

Nota: El rendimientose ve altamenteafectado por laescritura en redologs. Grupo 1 Grupo 2 Grupo 3

Disco 1

Disco 2

Miembro1

Miembro 2

Miembro 1

Miembro 2

Miembro 1

Miembro 2

Archivos Redo LogLos grupos de redo logs están formados por uno o más archivos redo log. Cada archivo log de un grupo es un duplicado de los otros. Oracle recomienda que los grupos de redo logs tengan al menos dos archivos por grupo, con los archivos distribuidos en discos o controladores independientes para que ningún fallo del equipo destruya un grupo de logs completo.La pérdida de un grupo de logs completo es uno de los posibles fallos del medio físico más graves porque puede producir la pérdida de datos. La pérdida de un único miembro de un grupo de logs con varios miembros es insignificante y no afecta al funcionamiento de la base de datos; sólo se publicará una alerta en el log de alertas. La recuperación de la pérdida de un grupo de logs completo necesita técnicas de recuperación avanzadas y se tratará en Base de Datos Oracle 10g: Taller de Administración II.Recuerde que los redo logs influyen mucho en el rendimiento de la base de datos porque una confirmación no se puede terminar hasta que la información de transacciones se haya escrito en los logs. Debe colocar los archivos redo log en los discos más rápidos que sirvan los controladores más rápidos. Si es posible, no coloque ningún otro archivo de base de datos en los mismos discos que los archivos redo log. Puesto que sólo se escribe un grupo en un momento determinado, no hay ningún problema en tener miembros de varios grupos en el mismo disco.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 129: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-23

Copyright © 2005, Oracle. Todos los derechos reservados.

Multiplexión del Redo Log

Multiplexión del Redo LogPara multiplexar el redo log, agregue un miembro a un grupo de logs existente. Para agregar un miembro a un grupo de redo logs (con la base de datos abierta y sin que tenga impacto en el rendimiento del usuario), realice los siguientes pasos:

1. Acceda a la página Redo Log Groups.2. Seleccione un grupo y haga clic en el botón Edit o haga clic en el enlace del nombre del

grupo. Aparece la página Edit Redo Log Group.3. En la región Redo Log Members, haga clic en Add. Se mostrará la página Add Redo Log

Member.4. Introduzca el nombre de archivo y el directorio de archivos. Haga clic en Continue.

Nota: Se recomienda que almacene los miembros en discos independientes para protegerse contra la pérdida total de entradas de redo log en caso de fallo de un disco.

Repita estos pasos para cada uno de los grupos existentes.Cuando agrega el miembro del redo log a un grupo, el estado del grupo se marca como INVALID. Éste es el estado esperado porque aún no se ha escrito en un miembro del grupo. Cuando se produce un cambio de log y el grupo no válido se convierte en el actual, el estado cambia a CURRENT.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 130: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-24

Copyright © 2005, Oracle. Todos los derechos reservados.

Archivos Archive Log

Para mantener la información de redo, cree copias archivadas de los archivos redo log, realizando los siguientes pasos:

1. Especifique la regla de nomenclatura de los archivos archive log.

2. Especifique una o más ubicaciones de los archivos archive log.

3. Cambie la base de datos al modo ARCHIVELOG.

Archivos redo log en línea Archivos archive log

Archivos Archive LogLa instancia trata los grupos de redo logs en línea como un buffer circular en el que almacenar la información de transacciones, llenando un grupo y, a continuación, pasando al siguiente. Después de que se haya escrito en todos los grupos, la instancia empieza a sobrescribir la información del primer grupo de logs.Para configurar la base de datos para la máxima recuperabilidad, debe indicarle que realice una copia del grupo de redo logs en línea antes de permitir que se sobrescriban. Estas copias se denominan archive logs. Para facilitar la creación de archivos archive log, realice los siguientes pasos:

1. Especifique una regla de nomenclatura para los archive logs.2. Especifique un destino o destinos para almacenar los archive logs.3. Ponga la base de datos en modo ARCHIVELOG.

Nota: El destino debe existir antes de poner la base de datos en modo ARCHIVELOG. Cuando se especifica un directorio como destino, debe haber una barra al final del nombre del directorio.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 131: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-25

Copyright © 2005, Oracle. Todos los derechos reservados.

Archivo Archive Log: Nomenclatura y Destinos

Archivo Archive Log: Nomenclatura y DestinosPara configurar la nomenclatura y los destinos de archivos archive log, haga clic en Configure Recovery Settings en la página Maintenance. Los archivos archive log deben tener un nombre único para evitar sobrescribir archivos log antiguos. Especifique el formato de nomenclatura como se muestra en la diapositiva. Para ayudar a crear nombres de archivo únicos, la base de datos Oracle 10g permite varios caracteres comodín en el formato de nombre:

• %s: Incluye el número de secuencia de log como parte del nombre de archivo• %t: Incluye el número de thread como parte del nombre de archivo • %r: Incluye el identificador de resetlogs para asegurarse de que el nombre del archivo

archive log sea único incluso después de determinadas técnicas de recuperación avanzadas que restablecen los números de secuencia de log

• %d: Incluye el identificador de base de datos como parte del nombre de archivoEl formato debe incluir %s, %t y %r. El uso de %d es opcional, pero se debe incluir si varias bases de datos comparten el mismo destino de archive logs.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 132: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-26

Archivo Archive Log: Nomenclatura y Destinos (continuación)Los archivos archive log se pueden escribir en un máximo de diez destinos distintos. Los destinos pueden ser locales (un directorio) o remotos (un alias de Red de Oracle para una base de datos en espera). Los destinos locales deben terminar en una barra “/” (o barra invertida “\” si se utiliza Windows).El destino por defecto (número 10) envía los archivos archive log a una ubicación determinada por el parámetro de inicialización DB_RECOVERY_FILE_DEST. DB_RECOVERY_FILE_DEST también se denomina área de recuperación de flash. Este destino se puede ver en la parte inferior de la página de propiedades Configure Recovery Settings como ubicación del área de recuperación de flash. Si no desea que se envíen los archivos a esta ubicación, suprima USE_DB_RECOVERY_FILE_DEST.Para cambiar los valores de recuperación, debe conectarse como SYSDBA o SYSOPER.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 133: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-27

Copyright © 2005, Oracle. Todos los derechos reservados.

Modo ARCHIVELOG

• Para poner la base de datos en modo ARCHIVELOG, realice los siguientes pasos:1. Active la casilla de control del modo ARCHIVELOG. 2. Haga clic en Apply. La base de datos sólo se puede

definir en el modo ARCHIVELOG desde el estado MOUNT.

3. Haga clic en Yes cuando se le pregunte si desea reiniciar la base de datos.

4. Cree una copia de seguridad de la base de datos.• Las bases de datos en modo ARCHIVELOG tienen

acceso a todas las opciones de copia de seguridad y de recuperación.

Modo ARCHIVELOG

Al poner la base de datos en el modo ARCHIVELOG los redo logs no se sobrescriben hasta que no se han archivado. El siguiente comando SQL se utiliza para poner la base de datos en modo ARCHIVELOG:

SQL> ALTER DATABASE ARCHIVELOG;

Este comando se puede emitir sólo mientras la base de datos tiene el estado MOUNT, por lo que la instancia se debe reiniciar para terminar este último paso. Se le pedirá que indique las credenciales del sistema operativo y de la base de datos durante el reinicio de la base de datos. Las credenciales de base de datos deben ser las de un usuario con privilegios SYSDBA. Una vez reiniciada la instancia, se activarán los cambios realizados en los procesos de archivado, formato de log y destinos de log.Con la base de datos en modo NOARCHIVELOG (modo por defecto), la recuperación sólo es posible hasta el momento en que se realizó la última copia de seguridad. Todas las transacciones realizadas después se perderán.En el modo ARCHIVELOG, la recuperación es posible hasta el momento en que se realizó la última confirmación. La mayoría de bases de datos de producción se ejecutan en modo ARCHIVELOG.Nota: Realice una copia de seguridad de la base de datos después de haber cambiado al modo ARCHIVELOG porque sólo podrá recuperar la base de datos de la última copia de seguridad realizada en ese modo.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 134: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-28

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Identificar los tipos de fallos que se pueden

producir en la base de datos Oracle• Describir las formas de ajustar la recuperación de

instancias• Identificar la importancia de los puntos de control,

archivos redo log y archivos archive log• Configurar el modo ARCHIVELOG

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 135: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 14-29

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica: Configuración de Recuperabilidad

En esta práctica se abordan los siguientes temas:• Multiplexión de los archivos de control• Multiplexión de los grupos de redo logs• Puesta de la base de datos en modo ARCHIVELOG• Garantía de que se crean archive logs

redundantes

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 136: Taller I DBA-Oracle 2

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 137: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Realización de Copias de Seguridad de Bases de Datos

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 138: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para lo siguiente:• Crear copias de seguridad de bases de datos

consistentes• Realizar copias de seguridad de bases de datos

sin cerrarlas• Crear copias de seguridad incrementales• Automatizar copias de seguridad de bases de

datos• Controlar el área de recuperación de flash

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 139: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Soluciones de Copia de Seguridad: Visión General

Las copias de seguridad se pueden realizar mediante:• Recovery Manager• Oracle Secure Backup• Un supuesto gestionado por usuario

Soluciones de Copia de Seguridad: Visión GeneralComo verá en el resto de esta lección, Recovery Manager (RMAN) es el método recomendado para realizar copias de seguridad de su base de datos Oracle. Oracle Secure Backup complementa la funcionalidad existente al agregar las capacidades de copias de seguridad en cintas y de red.Las copias de seguridad gestionadas por usuario se basan en archivos de comandos, que un DBA tendría que escribir. Esta opción se está dejando de utilizar porque es más laboriosa.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 140: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Oracle Secure Backup

• Oracle Secure Backup y RMAN proporcionan una completa solución de copia de seguridad para entornos de Oracle:– Gestión centralizada de copia de seguridad en cintas de

datos del sistema de archivos y de la base de datos Oracle– Capa de gestión de medios físicos con la máxima

integración para las copias de seguridad de RMAN– Copia de seguridad de todos los datos de cualquier punto

de la red• Un único recurso de soporte técnico para toda la

solución de copia de seguridad acelera la resolución de problemas.

• Así se garantiza una protección fiable de los datos con el menor costo y la mínima complejidad.

Oracle Secure BackupEl producto actual de Oracle para copia de seguridad y recuperación de la base de datos es Recovery Manager. Oracle Secure Backup complementa la funcionalidad existente de los siguientes modos:

• Solución de copia de seguridad completa: Oracle Secure Backup proporciona protección a los datos de la base de datos y también a los datos que no son de la base para proteger todo el entorno de Oracle.

• Gestión de medios físicos: Oracle Secure Backup proporciona una capa de gestión de medios físicos que facilita la copia de seguridad de la base de datos de RMAN en cintas. Antes de que existiera Oracle Secure Backup, los clientes tenían que adquirir costosos productos de terceros para la gestión de medios físicos que ofrecieran integración con las copias de seguridad de RMAN en cintas.

• Copias de seguridad en cualquier punto de la red: Oracle Secure Backup realiza copias de seguridad de los datos de varios sistemas de computadoras conectadas a la red en recursos de almacenamiento terciario de la red. Oracle Secure Backup soporta diversas configuraciones de servidores, clientes, servidores Network Attached Storage (NAS) y dispositivos de almacenamiento terciario al tiempo que protege los entornos de almacenamiento de la red.

La combinación de RMAN y Oracle Secure Backup proporciona una completa solución de copia de seguridad dentro de la pila de productos Oracle. Esto mejora el soporte al cliente ya que Oracle Corporation es responsable de toda la solución de copia de seguridad.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 141: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Copia de Seguridad Gestionada por Usuario

Un supuesto gestionado por usuario:• Es un proceso manual en el que se realiza un

seguimiento de las necesidades y estado de las copias de seguridad.

• Necesita que el DBA escriba archivos de comandos.

• Necesita que los archivos de la base de datos se pongan en el modo correcto para la copia de seguridad.

• Se basa en comandos del sistema operativo para realizar copias de seguridad de archivos.

Copia de Seguridad Gestionada por UsuarioUna copia de seguridad gestionada por usuario implica la escritura de archivos de comandos para realizar la copia de seguridad. Hay varios supuestos que se pueden ejecutar; se deben escribir archivos de comandos para manejarlos. Éstos son algunos de los pasos que deben realizar los archivos de comandos:

• Consultar v$datafile para determinar los archivos de datos que se deben incluir en la copia de seguridad y su estado actual.

• Consultar v$logfile para identificar los archivos redo log en línea.• Consultar v$controlfile para identificar el archivo de control para la copia de

seguridad.• Colocar cada tablespace en el modo de copia de seguridad online.• Consultar v$backup para ver qué archivos de datos forman parte de un tablespace que se

ha colocado en el modo de copia de seguridad online.• Ejecutar comandos de copia del sistema operativo para copiar los archivos de datos en la

ubicación de copia de seguridad.• Quitar cada tablespace del modo de copia de seguridad online.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 142: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-6

Copyright © 2005, Oracle. Todos los derechos reservados.

Terminología

• La estrategia de copia de seguridad puede incluir:– Toda la base de datos (completa)– Una parte de la base de datos (parcial)

• El tipo de copia de seguridad puede indicar la inclusión:– De toda la información de todos los archivos de

datos (completa)– Sólo de la información que ha cambiado desde una

copia de seguridad anterior (incremental)• El modo de copia de seguridad puede ser:

– Offline (consistente, en frío)– Online (inconsistente, con la base

de datos activa)

TerminologíaUna copia de seguridad de la base de datos completa incluye todos los archivos de datos y al menos un archivo de control. (Recuerde que todos los archivos de control dentro de una base de datos son idénticos.)La copia de seguridad de la base de datos parcial puede incluir cero o más tablespaces, cero o más archivos de datos y puede incluir o no un archivo de control.Las copias de seguridad completas realizan una copia de todos los bloques de datos que contienen datos y que están dentro de los archivos de los que se está realizando la copia de seguridad.Las copias de seguridad incrementales realizan una copia de todos los bloques de datos que han cambiado desde una copia de seguridad anterior. La base de datos Oracle 10g soporta dos niveles de copia de seguridad incremental (0 y 1). Una copia de seguridad de nivel 0 o de línea base es equivalente a una copia de seguridad completa y contiene todos los bloques de datos. Una copia de seguridad incremental de nivel 1 incluye todos los bloques de la base de datos modificados desde la copia de seguridad de nivel 0. Para restaurar utilizando copias de seguridad incrementales, se debe restaurar primero la copia de seguridad de línea base y, a continuación, la incremental.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 143: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-7

Terminología (continuación)Las copias de seguridad offline (también conocidas como copias de seguridad consistentes) se realizan cuando la base de datos no está abierta. Son consistentes porque en el momento de la copia de seguridad, el número de cambio del sistema (SCN) de las cabeceras de los archivos de datos coincide con los SCN de los archivos de control.Las copias de seguridad online (también conocidas como copias de seguridad inconsistentes) se realizan cuando la base de datos está abierta. Las copias de seguridad son inconsistentes porque, con la base de datos abierta, no hay garantía de que los archivos de datos estén sincronizados con los archivos de control. Para utilizar las copias de seguridad inconsistentes es necesario recuperarlas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 144: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Terminología

Las copias de seguridad se pueden almacenar como:• Copias de imagen• Juegos de copias de seguridad

Archivo de datos nº 2

Archivo de datos nº 3

Archivo de datos nº 4

Archivo de datos nº 5

Archivo de datos nº 1

Archivo de datos nº 6Copias de imagen

Juego de copiasde seguridad

Archivo de datos nº 6

Archivo de datos nº 5

Archivo de datos nº 4

Archivo de datos nº 3

Archivo de datos nº 2

Archivo de datos nº 1

Terminología (continuación)Las copias de imagen son duplicados de archivos de datos o archive log (similar a copiar los archivos utilizando comandos del sistema operativo).Los juegos de copias de seguridad son copias de uno o más archivos de datos o archive log. Con los juegos de copias de seguridad, los bloques de datos vacíos no se almacenan, por lo que los juegos de copias de seguridad utilizan menos espacio en disco o en cinta. Los juegos de copias de seguridad se pueden comprimir para reducir más los requisitos de espacio de la copia de seguridad.La copia de seguridad de las copias de imagen se debe realizar en disco. Los juegos de copias de seguridad se pueden enviar a disco o directamente a cinta.La ventaja de crear una copia de seguridad como una copia de imagen es la mejora en la granularidad de la operación de restauración. Con una copia de imagen, sólo el archivo o los archivos se deben recuperar de la cinta. Con los juegos de copias de seguridad, toda la copia de seguridad se debe recuperar de la cinta para extraer el archivo o los archivos necesarios.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 145: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-9

Terminología (continuación)La ventaja de crear copias de seguridad como juegos es el mejor uso del espacio. La mayoría de las bases de datos contienen un 20% o más bloques vacíos. Las copias de imagen realizan la copia de seguridad de todos los bloques de datos, incluso si están vacíos. Los juegos de copias de seguridad reducen significativamente el espacio necesario para la copia de seguridad. En la mayor parte de los sistemas, las ventajas de los juegos de copias de seguridad son mayores que las de las copias de imagen.Una copia de seguridad de una base de datos ejecutándose en el modo NOARCHIVELOG debe tener los siguientes tres atributos: offline, completa y de la base de datos completa. Las bases de datos en modo ARCHIVELOG tienen acceso a todas las opciones de copia de seguridad.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 146: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Recovery Manager (RMAN)

• Enterprise Manager utiliza Recovery Manager (RMAN) para realizar operaciones de copia de seguridad y recuperación.

• RMAN:– Es un cliente de línea de comandos para funciones

avanzadas– Tiene un potente lenguaje de control y de archivos de

comandos– Tiene una API publicada que permite interactuar con el

software de copia de seguridad más conocido– Realiza copia de seguridad de archivos de datos, de

control, archive log y de parámetros de servidor– Realiza copia de seguridad de los archivos en disco o cinta

Recovery Manager (RMAN)RMAN es el componente de la base de datos Oracle 10g que se utiliza para realizar operaciones de copia de seguridad y recuperación. Puede realizar copias de seguridad consistentes e inconsistentes, incrementales o completas, de la base de datos completa o de una parte de la misma.RMAN utiliza un potente lenguaje de control de trabajos y de archivos de comandos propio, asícomo una API publicada que permite a RMAN interactuar con muchas soluciones de software de copia de seguridad conocidas.RMAN puede almacenar copias de seguridad en disco para una recuperación rápida, o en cinta para su almacenamiento a largo plazo. Para que RMAN almacene las copias de seguridad en cinta, se debe configurar una interfaz al dispositivo de cinta conocida como capa de gestión de medios físicos (MML). Enterprise Manager proporciona una interfaz gráfica de las funciones de RMAN más utilizadas. El acceso a las operaciones avanzadas de copia de seguridad y recuperación se realiza a través del cliente de línea de comandos de RMAN. Para obtener más información sobre las capacidades RMAN avanzadas, consulte Base de Datos Oracle 10g: Taller de Administración II u Oracle Backup and Recovery Advanced User’s Guide.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 147: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Configuración de Valores de Copia de Seguridad

Configuración de Valores de Copia de SeguridadAcceda a la página Maintenance y haga clic en Configure Backup Settings. En esta página de propiedades se gestionan los valores de copia de seguridad persistente que se utilizan para crear copias de seguridad. Hay valores distintos para disco y cinta. Los valores de cinta dependen de las capacidades de la biblioteca de gestión de medios físicos. Los valores de disco incluyen:

• Parallelism: Número de flujos de información de copia de seguridad distintos que desea crear. La mejor configuración para el paralelismo dependerá del hardware. Una única CPU, un único controlador de disco o un único servidor de disco no se beneficiarían de la realización de copias de seguridad paralelas. A medida que aumentan los recursos de hardware, el grado de paralelismo adecuado también aumenta.

• Disk Backup Location: Lugar donde se deben almacenar las copias de seguridad. El valor por defecto es el área de recuperación de flash. Si lo cambia, haga clic en “Test Disk Backup” para verificar que RMAN puede escribir en la nueva ubicación.

• Disk Backup Type: Seleccione Image Copy, Backup Set o Compressed Backup Set.Haga clic en el separador Backup Set para definir el tamaño máximo de los archivos de juego de copias de seguridad. (Los juegos de copias de seguridad se pueden dividir más si es necesario para un archivado más sencillo.) Las credenciales de host son necesarias para que Enterprise Manager guarde los cambios a los valores de copia de seguridad.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 148: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-12

Copyright © 2005, Oracle. Todos los derechos reservados.

Configuración de Valores de Copia de Seguridad

Configuración de Valores de Copia de Seguridad (continuación)Haga clic en el separador Policy para:

• Realizar una copia de seguridad automática del archivo de control y del archivo de parámetros del servidor (SPFILE) con cada copia de seguridad. También puede especificar una ubicación para estas copias de seguridad, si no desea que vayan al área de recuperación de flash.

• Optimizar las copias de seguridad omitiendo la copia de archivos que coincidan exactamente con un archivo que ya forma parte de las copias de seguridad conservadas. Este valor permite saltar los archivos de datos de sólo lectura y offline.

• Activar el seguimiento de cambios de bloque y especificar una ubicación para el archivo de seguimiento. Si intenta crear copias de seguridad incrementales, este ajuste puede reducir el tiempo necesario para seleccionar los bloques que se deben incluir en la copia de seguridad incremental.

• Excluir el tablespace de una copia de la base de datos completa. Algunos administradores eligen no realizar la copia de seguridad de tablespaces que contengan datos u objetos que se pueden volver a crear fácilmente (como índices o datos que se cargan por lotes con frecuencia).

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 149: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-13

Configuración de Valores de Copia de Seguridad (continuación)• Especificar una política de retención: Tiempo que RMAN conserva las copias de

seguridad. Si utiliza el área de recuperación de flash para almacenar copias de seguridad, RMAN suprime automáticamente las copias de seguridad antiguas para crear espacio para las nuevas (si lo permite la política de retención). Por defecto, sólo se conserva la última copia de seguridad. La política de retención se puede especificar como un número de copias de seguridad o de días.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 150: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-14

Copyright © 2005, Oracle. Todos los derechos reservados.

Planificación de Copias de Seguridad: Estrategia

Seleccionar una copia de seguridad completa o parcial de la base de datos.

Planificación de Copias de Seguridad: EstrategiaHaga clic en Schedule Backup en la región Backup/Recovery de la página de propiedades Maintenance. Seleccione la estrategia de copia de seguridad sugerida por Oracle o su propia estrategia personalizada. La estrategia de copia de seguridad sugerida por Oracle crea una única copia de seguridad de base de datos completa, que se realiza online. Se trata de una copia de seguridad incremental de línea base de nivel 0. A continuación, la estrategia de copia de seguridad automatizada planifica copias de seguridad incrementales de nivel 1 para cada día siguiente. Al seleccionar Customized, obtiene acceso a un rango más amplio de opciones de configuración. Seleccione los objetos de los que desea realizar copias de seguridad: la base de datos completa (por defecto) o tablespaces, archivos de datos o archive logs individuales, o bien cualquier copia de seguridad de Oracle que resida actualmente en disco (para moverla a cinta).

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 151: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Planificación de Copias de Seguridad: Options

Planificación de Copias de Seguridad: OptionsSeleccione el tipo de copia de seguridad completa o incremental. Si realiza una copia de seguridad de base de datos completa, puede seleccionar “Use as the base of an incremental backup strategy” para que la copia de seguridad de base de datos completa sea una copia de seguridad incremental de nivel 0. Si utiliza copias de imagen, puede activar la casilla de control “Refresh the latest datafile copy on disk to the current time using the incremental backup” para actualizar la copia de seguridad existente en lugar de crear una copia de imagen nueva.Haga clic en “Delete obsolete backups” para eliminar todas las copias de seguridad que no cumplan con la política de retención configurada anteriormente. RMAN elimina automáticamente todas las copias de seguridad obsoletas si está realizando la copia de seguridad en el área de recuperación de flash.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 152: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-16

Copyright © 2005, Oracle. Todos los derechos reservados.

Planificación de Copias de Seguridad: Settings

Planificación de Copias de Seguridad: SettingsSeleccione si la copia de seguridad se enviará al disco o a la cinta.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 153: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Planificación de Copias de Seguridad: Schedule

Planificación de Copias de Seguridad: ScheduleSeleccione cómo desea planificar la copia de seguridad: como un trabajo que se ejecuta una sola vez o como un proceso automatizado y repetitivo.Para configurar una base de datos para una máxima recuperabilidad, Oracle sugiere realizar copias de seguridad planificadas de forma regular. La automatización de copias de seguridad puede simplificar la carga de trabajo del administrador.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 154: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Planificación de Copias de Seguridad: Review

Haga clic en Edit RMAN Script para revisar comandos de RMAN.

Planificación de Copias de Seguridad: ReviewRMAN utiliza su propia sintaxis de comandos y su lenguaje de archivos de comandos. Haga clic en el botón Edit RMAN Script para ver los comandos que ha generado el planificador de copia de seguridad según las especificaciones proporcionadas por el usuario. Mediante esta página puede personalizar los archivos de comandos de RMAN si es necesario o copiarlos con fines de registro.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 155: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-19

Copyright © 2005, Oracle. Todos los derechos reservados.

Copia de Seguridad del Archivo de Control en un Archivo de Rastreo

Los archivos de control tienen una opción adicional de copia de seguridad.

Las copias de seguridad para rastreo de archivos de control se pueden utilizar para recuperar la pérdida de todos los archivos de control.

Copia de Seguridad del Archivo de Control en un Archivo de RastreoHaga clic en Control Files en la región Storage de la página de propiedades Administration para gestionar los archivos de control de la base de datos. Los archivos de control tienen una opción de copia de seguridad adicional; se puede hacer una copia de seguridad de los mismos en un archivo de rastreo. Una copia de seguridad para rastreo de archivos de control contiene la sentencia SQL necesaria para volver a crear los archivos de control en caso de que se pierdan todos los archivos de control. Aunque es bastante improbable que una base de datos configurada correctamente (con varias copias del archivo de control en distintos discos y distintos controladores) pierda todos los archivos de control al mismo tiempo, es posible. Por lo tanto, el administrador debe realizar una copia de seguridad del archivo de control en un archivo de rastreo tras cada cambio en la estructura física de la base de datos (adición de tablespaces o archivos de datos, o adición de grupos de redo logs adicionales).Las copias de rastreo del archivo de control se pueden crear con Enterprise Manager (como se indica en la diapositiva) haciendo clic en Control Files en la página de propiedades Administration o con el siguiente comando SQL:

SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE;

La copia de seguridad para rastreo se crea en la ubicación especificada mediante el parámetro de inicialización USER_DUMP_DEST con un nombre de archivo como sid_ora_pid.trc.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 156: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-20

Copia de Seguridad del Archivo de Control en un Archivo de Rastreo (continuación)El archivo de rastreo contiene información sobre los destinos de archive log seguida de comandos que crean archivos de control de sustitución y, a continuación, recupera la base de datos:

CREATE CONTROLFILE REUSE DATABASE ORCL NORESETLOGS ARCHIVELOGMAXLOGFILES 16MAXLOGMEMBERS 3MAXDATAFILES 100MAXINSTANCES 8MAXLOGHISTORY 226

LOGFILEGROUP 1 '/oracle/oradata/orcl/redo01.log' SIZE 10M,GROUP 2 '/oracle/oradata/orcl/redo02.log' SIZE 10M,GROUP 3 '/oracle/oradata/orcl/redo03.log' SIZE 10M

DATAFILE'/oracle/oradata/orcl/system01.dbf','/oracle/oradata/orcl/undotbs01.dbf','/oracle/oradata/orcl/sysaux01.dbf','/oracle/oradata/orcl/users01.dbf','/oracle/oradata/orcl/example01.dbf'

CHARACTER SET WE8ISO8859P1;-- Commands to re-create incarnation table-- Below log names MUST be changed to existing filenames on-- disk. Any one log file from each branch can be used to-- re-create incarnation records.-- ALTER DATABASE REGISTER LOGFILE

'/oracle/flash_recovery_area/ORCL/archivelog/2003_12_05/o1_mf_1_1_%u_.arc';

-- ALTER DATABASE REGISTER LOGFILE '/oracle/flash_recovery_area/ORCL/archivelog/2003_12_05/o1_mf_1_1_%u_.arc';

-- Recovery is required if any of the data files are restored backups,

-- or if the last shutdown was not normal or immediate.RECOVER DATABASE-- All logs need archiving and a log switch is needed.ALTER SYSTEM ARCHIVE LOG ALL;-- Database can now be opened normally.ALTER DATABASE OPEN;-- Commands to add tempfiles to temporary tablespaces.-- Online tempfiles have complete space information.-- Other tempfiles may require adjustment.ALTER TABLESPACE TEMP ADD TEMPFILE

'/oracle/oradata/orcl/temp01.dbf'SIZE 20971520 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE

32767M;

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 157: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Gestión de Copias de Seguridad

Gestión de Copias de SeguridadHaga clic en Manage Current Backups en la página de propiedades Maintenance para gestionar las copias de seguridad existentes. En esta página puede ver cuándo se completó una copia de seguridad, dónde se creó (disco o cinta) y si aún está disponible.En la parte superior de la página Manage Current Backups aparecen cuatro botones que permitentrabajar con copias de seguridad existentes.

• Catalog Additional Files: Aunque RMAN (al trabajar mediante Enterprise Manager) es el modo recomendado para crear copias de seguridad, se pueden crear copias de imagen o juegos de copias de seguridad mediante algún otro tipo de medio u entorno que no tenga en cuenta RMAN. Esta tarea identifica esos archivos y los agrega al catálogo.

• Crosscheck All: RMAN puede suprimir automáticamente las copias de seguridad obsoletas, pero también puede suprimirlas utilizando comandos del sistema operativo. Si suprime una copia de seguridad sin utilizar RMAN, el catálogo no tendrá conocimiento de que ésta falta hasta que realice una comprobación cruzada entre el catálogo y lo que hay realmente allí.

• Delete All Obsolete: Suprime las copias de seguridad anteriores a la política de retención.• Delete All Expired: Suprime la lista del catálogo para las copias de seguridad que no se

encontraron al realizar la comprobación cruzada.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 158: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-22

Copyright © 2005, Oracle. Todos los derechos reservados.

Área de Recuperación de Flash

Controlar el área de recuperación de flash para:• Configurar el registro de flashback• Dimensionar el área de recuperación• Visualizar el consumo de espacio actual

Área de Recuperación de FlashEl área de recuperación de flash es un espacio separado en el disco para contener archive logs, copias de seguridad y logs de flashback. Si ha configurado los archive logs para que se escriban en esta ubicación (con el indicador USE_DB_RECOVERY_AREA en una de las ubicaciones), es importante controlar este espacio para asegurarse de que no alcanza la capacidad. Si la instancia no puede crear un archive log debido a falta de espacio, se detiene hasta que el administrador corrija la situación.Al hacer clic en Recovery Settings en la página de propiedades Maintenance se accede a los valores de Flash Recovery Area. En esta página puede:

• Especificar la ubicación del área de recuperación de flash• Especificar el tamaño del área de recuperación de flash (Oracle recomienda que sea al

menos dos veces el tamaño de la base de datos para que pueda contener una copia de seguridad y varios archive logs)

• Verificar qué cantidad del área de recuperación de flash se ha consumido• Configurar el flashback de base de datos. El flashback de base de datos se trata en la

lección titulada “Realización de Flashback”.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 159: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-23

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Crear copias de seguridad de bases de datos

consistentes• Realizar copias de seguridad de bases de datos

sin cerrarlas• Crear copias de seguridad incrementales• Automatizar copias de seguridad de bases de

datos• Controlar el área de recuperación de flash

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 160: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 15-24

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica:Creación de Copias de Seguridad de

Bases de Datos

En esta práctica se abordan los siguientes temas:• Configuración de la base de datos para realizar

copias de seguridad• Realización de una copia de seguridad de la base

de datos mientras ésta está abierta para mantener la actividad de los usuarios

• Planificación de copias de seguridad incrementales automáticas de la base de datos por las noches

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 161: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Recuperación de Bases de Datos

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 162: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para recuperar la pérdida de lo siguiente:• Archivo de control• Archivo redo log• Archivo de datos

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 163: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Apertura de una Base de Datos

Para abrir una base de datos:• Todos los archivos de control deben estar

presentes y sincronizados• Todos los archivos de datos online deben estar

presentes y sincronizados• Al menos un miembro de cada grupo de redo logs

debe estar presente

SHUTDOWN

NOMOUNT

MOUNT

OPENSTARTUP

Apertura de una Base de DatosCuando una base de datos cambia de la etapa de cierre hasta estar completamente abierta, realiza comprobaciones internas de consistencia. Las etapas son:• NOMOUNT: Para que una instancia alcance el estado NOMOUNT (también denominado

STARTED), la instancia debe leer el archivo de parámetros de inicialización. No se comprueba ningún archivo de base de datos mientras la instancia entra en el estado NOMOUNT.

• MOUNT: Cuando la instancia cambia al estado MOUNT, comprueba si todos los archivos de control que aparecen en el archivo de parámetros de inicialización están presentes y sincronizados. Si falta un archivo de control o está corrupto, la instancia devuelve un error (con el archivo de control que falta) al administrador y permanece en estado NOMOUNT.

• OPEN: Cuando la instancia cambia del estado MOUNT a OPEN:- Comprueba si todos los grupos de redo logs que conoce el archivo de control tienen al

menos un miembro. Todos los miembros que faltan se anotan en el log de alertas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 164: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-4

Apertura de una Base de Datos (continuación)- Verifica que todos los archivos de datos que conoce el archivo de control están

presentes a menos que se hayan puesto offline. Los archivos offline no se comprueban hasta que el administrador intenta ponerlos online. El administrador puede poner un archivo de datos offline y abrir la instancia siempre que el archivo de datos no pertenezca a los tablespaces SYSTEM o UNDO. Si falta algún archivo, se devuelve al administrador un error que indica el primer archivo que falta, y la instancia sigue en estado MOUNT. Cuando la instancia descubre que faltan archivos, sólo aparece en el mensaje de error el primer archivo que causa el problema. Para buscar todos los archivos que es necesario recuperar, el administrador puede comprobar la vista de rendimiento dinámico v$recover_file para obtener una lista completa de los archivos que necesitan atención:SQL> startupORACLE instance started.Total System Global Area 171966464 bytesFixed Size 775608 bytesVariable Size 145762888 bytesDatabase Buffers 25165824 bytesRedo Buffers 262144 bytesDatabase mounted.ORA-01157: cannot identify/lock data file 4 - see DBWR trace fileORA-01110: data file 4: '/oracle/oradata/orcl/users01.dbf'SQL> SELECT name, error

2 FROM v$datafile3 JOIN v$recover_file4 USING (file#);

NAME ERROR----------------------------------- ------------------/oracle/oradata/orcl/users01.dbf FILE NOT FOUND/oracle/oradata/orcl/example01.dbf FILE NOT FOUND

- Verifica que todos los archivos de datos que no están offline o son de sólo lectura están sincronizados con el archivo de control. Si es necesario, la recuperación de la instancia se realiza automáticamente. Sin embargo, si un archivo no está sincronizado de forma que no se puede recuperar mediante los grupos de redo logs online, el administrador debe realizar una recuperación del medio físico. Si algún archivo necesita la recuperación del medio físico, se devuelve al administrador un mensaje de error que indica el primer archivo que se necesita recuperar, y la instancia sigue en estado MOUNT:ORA-01113: file 4 needs media recoveryORA-01110: data file 4: '/oracle/oradata/orcl/users01.dbf'

De nuevo, v$recover_file proporciona una lista completa de los archivos que necesitan atención. Se enumeran los archivos que están presentes y que necesitan recuperación de medios físicos, pero no se muestra ningún mensaje de error.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 165: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Cambio del Estado de la Instancia

Utilice Database Control para modificar el estado de la instancia.

Cambio del Estado de la InstanciaAl iniciar la instancia, el modo de inicio por defecto es OPEN. Puede decidir iniciar la instancia en algún otro modo o puede que problemas con la base de datos le obliguen a iniciar la instancia en otro modo. La página de propiedades Advanced Startup Options permite seleccionar un estado que no sea OPEN al iniciar la instancia y modificar el estado si la instancia ya se ha iniciado en otro modo. También puede utilizar comandos SQL para modificar el estado de una instancia:

SQL> STARTUP NOMOUNTORACLE instance started.

Total System Global Area 188743680 bytesFixed Size 778036 bytesVariable Size 162537676 bytesDatabase Buffers 25165824 bytesRedo Buffers 262144 bytes

SQL> ALTER DATABASE MOUNTDatabase altered.

SQL> ALTER DATABASE OPEN

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 166: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-6

Copyright © 2005, Oracle. Todos los derechos reservados.

Mantenimiento de una Base de Datos Abierta

Una vez abierta la instancia, falla en el caso de pérdida de:• Cualquier archivo de control• Un archivo de datos que pertenezca a los

tablespaces del sistema o de deshacer• Todo un grupo de redo logs. Siempre que al

menos un miembro del grupo esté disponible, la instancia permanece abierta

Mantenimiento de una Base de Datos AbiertaUna vez abierta una instancia, el fallo del medio físico que causa la pérdida de un archivo de control, la pérdida de todo un grupo de redo logs o la pérdida de un archivo de datos que pertenece a los tablespaces SYSTEM o UNDO provoca que la instancia falle.En muchos casos la instancia fallida no se cierra completamente, sino que no puede continuar realizando el trabajo. La recuperación de estos tipos de fallos del medio físico se debe realizar con la base de datos cerrada, por lo que el administrador debe utilizar el comando SHUTDOWN ABORT antes de que iniciar la recuperación.La pérdida de archivos de datos que pertenezcan a otros tablespace no provoca ningún fallo de la instancia y se puede recuperar la base de datos mientras está abierta continuando con trabajo en otros tablespace.Podrá detectar estos errores si consulta el archivo log de alertas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 167: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-7

Copyright © 2005, Oracle. Todos los derechos reservados.

Pérdida de un Archivo de Control

Si se pierde o se corrompe un archivo de control, normalmente la instancia se aborta, momento en el que debe realizar los pasos siguientes:1. Cierre la instancia si aún está abierta.2. Restaure el archivo de control que falta copiando

uno existente.3. Inicie la instancia.

Archivos de control

Pérdida de un Archivo de ControlPara recuperar un archivo de control perdido (siempre que quede al menos un archivo de control), realice los siguientes pasos:

1. Si la instancia aún no ha fallado, ciérrela mediante SHUTDOWN ABORT.2. Copie uno de los restantes archivos de control en la ubicación del archivo que falta. Si el

fallo del medio físico se debe a la pérdida de una unidad o controlador de disco, copie uno de los archivos de control restantes en otra ubicación y actualice el archivo de parámetros de la instancia para que apunte a la nueva ubicación. Asimismo, puede suprimir la referencia al archivo de control que falta desde el archivo de parámetros de inicialización. Recuerde que Oracle recomienda tener al menos dos archivos de control en todo momento.

3. Inicie la instancia.La recuperación de todos los archivos de control perdidos se trata en Base de Datos Oracle 10g: Taller de Administración II.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 168: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Pérdida de un Archivo Redo Log

Si se pierde un miembro de un grupo de archivos redo log, siempre que el grupo siga teniendo al menos un miembro:1. No afectará al funcionamiento normal de la instancia2. Recibirá un mensaje en el log de alertas que le

notifica que no se ha encontrado un miembro3. Restaure el archivo log que falta copiando uno de

los restantes del mismo grupo

Pérdida de un Archivo Redo LogLa recuperación de un único miembro perdido del grupo de redo logs no debe afectar a lainstancia en ejecución. Para realizar esta recuperación, realice los siguientes pasos:

1. Determine si falta un archivo log examinando el log de alertas.2. Restaure el archivo que falta copiando uno de los restantes del mismo grupo.3. Si el fallo del medio físico se debe a la pérdida de una unidad o controlador de disco,

cambie el nombre del archivo que falta.4. Si el grupo ya se ha archivado o si está en modo NOARCHIVELOG, puede resolver el

problema limpiando el grupo de logs para volver a crear el archivo o archivos que faltan. Seleccione el grupo adecuado y, a continuación, la acción Clear Logfile. También puede limpiar el grupo afectado manualmente con el siguiente comando:

SQL> ALTER DATABASE CLEAR LOGFILE GROUP #;

Nota: Database Control no permite limpiar un grupo de logs que no se ha archivado. Si lo hace romperá la cadena de información de redo. Si debe limpiar un grupo de logs no archivado, debe realizar inmediatamente una copia de seguridad completa de toda la base de datos. De lo contrario, se puede producir una pérdida de datos en caso de que se produzca otro fallo. Para limpiar un grupo de logs no archivado, utilice el comando siguiente:

SQL> ALTER DATABASE CLEAR UNARCHIVED LOGFILE GROUP #;

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 169: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-9

Copyright © 2005, Oracle. Todos los derechos reservados.

Pérdida de un Archivo de Datos en Modo NOARCHIVELOG

Si la base de datos está en modo NOARCHIVELOG y se pierde cualquier archivo de datos, realice las siguientes tareas:1. Cierre la instancia si aún no lo está.2. Restaure toda la base de datos, incluidos todos los

archivos de datos y de control de la copia de seguridad.3. Abra la base de datos.4. Los usuarios tienen que volver a introducir todos los

cambios realizados desde la última copia de seguridad.

Usuario Usuario UsuarioUsuario Usuario

Pérdida de un Archivo de Datos en Modo NOARCHIVELOGLa pérdida de cualquier archivo de datos de una base de datos en modo NOARCHIVELOGnecesita una restauración completa de la base de datos, incluidos los archivos de control y todos los archivos de datos.Con la base de datos en modo NOARCHIVELOG, la recuperación sólo es posible hasta el momento en que se realizó la última copia de seguridad. Por este motivo, los usuarios tienen que volver a introducir todos los cambios realizados desde esa copia de seguridad. Para este tipo de recuperación, realice las siguientes tareas:

1. Cierre la instancia si aún no lo está.2. Haga clic en Perform Recovery en la página de propiedades Maintenance. 3. Seleccione Whole Database como tipo de recuperación.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 170: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Pérdida de un Archivo de Datos No Crítico en Modo ARCHIVELOG

Si un archivo de datos se pierde o está corrupto, y dicho archivo no pertenece al tablespace SYSTEM o UNDO, restaure y recupere el archivo de datos que falta.

Usuarios

Pérdida de un Archivo de Datos No Crítico en Modo ARCHIVELOGCon la base de datos en modo ARCHIVELOG, la pérdida de cualquier archivo de datos que no pertenezca a los tablespaces SYSTEM o UNDO afecta sólo a los objetos que están en el archivo que falta. El resto de la base de datos sigue disponible para que los usuarios continúen con el trabajo. Para restaurar y recuperar el archivo de datos que falta, realice los siguientes pasos:

1. Haga clic en Perform Recovery en la página de propiedades Maintenance.2. Seleccione “Datafiles” como tipo de recuperación y, a continuación, “Restore to current

time or a previous point-in-time”.3. Agregue todos los archivos de datos que sea necesario recuperar.4. Determine si desea restaurar los archivos a la ubicación por defecto o (si falta un disco o

controlador) a una nueva ubicación.5. Ejecute el trabajo RMAN para restaurar y recuperar los archivos que faltan.

Puesto que la base de datos está en modo ARCHIVELOG, la recuperación es posible hasta el momento de la última confirmación y no es necesario que los usuarios vuelvan a introducir ningún dato.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 171: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Pérdida de un Archivo de Datos Crítico del Sistema en Modo ARCHIVELOG

Si un archivo de datos se pierde o está corrupto, y dicho archivo pertenece al tablespace SYSTEM o UNDO:1. Puede que la instancia se cierre automáticamente

o que no se cierre. Si no se cierra, utilice SHUTDOWN ABORT para cerrarla.

2. Monte la base de datos3. Restaure y recupere el archivo de datos que falta4. Abra la base de datos

Usuarios

Pérdida de un Archivo de Datos Crítico del SistemaLos archivos de datos que pertenecen al tablespace SYSTEM o que contienen los datos UNDO se consideran críticos del sistema. La pérdida de uno de estos archivos necesita que se restaure la base de datos desde el estado MOUNT (a diferencia de otros archivos de datos que se pueden restaurar con la base de datos abierta). Para realizar esta recuperación, realice los siguientes pasos:

1. Si la instancia aún no se ha cerrado, ciérrela.2. Monte la base de datos.3. Haga clic en Perform Recovery en la página de propiedades Maintenance.4. Seleccione “Datafiles” como tipo de recuperación y, a continuación, “Restore to current

time or a previous point-in-time”.5. Agregue todos los archivos de datos que sea necesario recuperar.6. Determine si desea restaurar los archivos a la ubicación por defecto o (si falta un disco o

controlador) a una nueva ubicación.7. Ejecute el trabajo RMAN para restaurar y recuperar los archivos que faltan. 8. Abra la base de datos. Los usuarios no tienen que volver a introducir los datos porque la

recuperación se ha realizado hasta el momento de la última confirmación.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 172: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-12

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido a recuperar la pérdida de lo siguiente:• Archivo de control• Archivo redo log• Archivo de datos

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 173: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 16-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica:Recuperación de Bases de Datos

En esta práctica se aborda la recuperación ante la pérdida de lo siguiente:• Archivo de control• Archivo redo log• Archivo de datos no crítico• Archivo de datos crítico del sistema

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 174: Taller I DBA-Oracle 2

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 175: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Realización de Flashback

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 176: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para:• Describir la función de flashback de base de datos• Restaurar el contenido de la tabla a un punto

específico en el pasado con flashback de tabla• Recuperar una tabla borrada• Visualizar el contenido de la base de datos desde

cualquier punto en el tiempo con consulta de flashback

• Visualizar las versiones de una fila a lo largo del tiempo con consulta de flashback de versiones

• Visualizar el historial de transacciones o una fila con consulta de flashback de transacciones

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 177: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Tecnología de Flashback:Ventajas

• La tecnología de flashback es un avance revolucionario en la recuperación.

• Las técnicas de recuperación tradicionales son lentas.– Se debe restaurar toda la base de datos o un archivo

(no sólo los datos incorrectos). – Se deben examinar todos los cambios del log de la base

de datos. • La operación de flashback es rápida.

– Los cambios se indexan por fila y por transacción.– Sólo se restauran los datos cambiados.

• Los comandos de flashback son sencillos.– No se incluyen procedimientos complejos de varios pasos.

> Visión GeneralBase de DatosTablaBorradoConsultaVersionesTransacción

Tecnología de Flashback: VentajasLa arquitectura de la base de datos Oracle 10g aprovecha las ventajas tecnológicas únicas en el área de recuperación de bases de datos por la pérdida de datos debido a errores humanos. La tecnología de flashback ofrece un juego de funciones nuevas para visualizar y rebobinar los datos hacia delante y hacia atrás en el tiempo.Esta tecnología revoluciona la recuperación ya que simplemente actúa en los datos cambiados. El tiempo que se tarda en recuperarse del error equivale ahora al que se tarda en cometerlo. Cuando sea aplicable, la tecnología de flashback ofrece ventajas importantes sobre la recuperación del medio físico en términos de facilidad de uso, disponibilidad y tiempo de restauración.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 178: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Cuándo Utilizar la Tecnología de Flashback

VerdaderoDatos de deshacer

TablaActualizar con la cláusula WHERE incorrecta

Datos de deshacer

Datos de deshacer

Datos de deshacer

Papelera de reciclaje

Logs de flashback

Usos

Transacción

Versión

Consulta

Borrado

Base de datos

Tecnologíade Flashback

FalsoComparar datos actuales con datos anteriores

FalsoInvestigar varios estados históricos de los datos

Transacción

FalsoComparar versiones de una fila

VerdaderoBorrar una tablaTabla

VerdaderoTruncar una tabla; cambios no deseados realizados en varias tablas

Base de datos

Afecta alos DatosEjemplos de Supuestos

Nivel de Objeto

Cuándo Utilizar la Tecnología de FlashbackLa tecnología de flashback se debe utilizar cuando se produce una corrupción lógica en la base de datos Oracle y necesita una recuperación de datos rápida y sencilla. Al igual que con los errores humanos, es difícil identificar los objetos y las filas que se ven afectados por una transacción errónea. Con la tecnología de flashback, puede diagnosticar cómo se introdujeron los errores en la base de datos y, a continuación, reparar el daño. Puede ver las transacciones que han contribuido a modificaciones de filas específicas, ver todo el juego de versiones de una fila determinada durante un período de tiempo o simplemente ver los datos tal y como aparecían en un momento concreto del pasado. En la tabla de la diapositiva se muestran los usos típicos de la tecnología de flashback.El flashback de base de datos utiliza los logs de flashback para realizar la operación de flashback. El flashback de borrado utiliza la papelera de reciclaje. Todas las demás técnicas utilizan los datos de deshacer.No todas las funciones de flashback modifican la base de datos. Algunas son simples métodos para consultar otras versiones de los datos. Son herramientas que puede utilizar para investigar un problema y como ayuda para la recuperación. Los resultados de estas consultas de flashback pueden ayudar a realizar una de las dos operaciones siguientes:

• Determinar qué tipo de operación de flashback que modifica la base de datos se debe realizar para corregir el problema.

• Introducir el juego de resultados de estas consultas en una sentencia INSERT, UPDATE o DELETE que permita reparar fácilmente los datos erróneos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 179: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Realización de Flashback en Cualquier Error

• La función de flashback de base de datos devuelve la base de datos a un punto anterior en el tiempo al deshacer todos los cambios realizados desde ese momento.

• La función de flashback de tabla recupera una tabla a un punto en el tiempo pasado sin tener que restaurar una copia de seguridad.

• La función de flashback de borrado restaura las tablas borradas por accidente.

Realización de Flashback en Cualquier ErrorLa base de datos Oracle 10g introduce capacidades ampliadas de flashback de base de datos. Si se produce un error grave que origina cambios que no son aislados, como un trabajo por lotes que se ejecuta dos veces seguidas, puede solicitar una operación de flashback que recupera rápidamente toda la base de datos hasta un punto anterior en el tiempo. Esto evita tener que restaurar copias de seguridad y realizar una recuperación point-in-time. Además de las operaciones de flashback a nivel de base de datos, también es posible realizar una operación de flashback de una única tabla o recuperar una tabla borrada por error.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 180: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-6

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Base de Datos:Visión General

La operación de flashback de base de datos:• Funciona como un botón de rebobinado

en la base de datos• Se puede utilizar en casos de corrupción de datos

lógicos provocada por los usuarios

La base de datos se

corrompe.

La base de datos se

“rebobina”.

Pulsa el botón de rebobinar.

Los usuarios generan errores.

Visión General> Base de Datos

TablaBorradoConsultaVersionesTransacción

Flashback de Base de Datos: Visión GeneralCon el flashback de base de datos puede devolver rápidamente la base de datos a un punto anterior en el tiempo deshaciendo todos los cambios realizados desde ese momento. Esta operación es rápida, porque no es necesario restaurar las copias de seguridad. Puede utilizar esta función para deshacer cambios que han provocado corrupciones de datos lógicos.Si se han perdido medios físicos o se ha producido corrupción física en la base de datos, deberá utilizar los métodos de recuperación tradicionales.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 181: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-7

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Base de Datos: Reducción del Tiempo de Restauración

Copia de seguridad Error del usuarioAplicación de

logs hacia delante

Restauraciónde archivos

Generación de logs

Base de datosreparada

Recuperación Incompleta

Copia de seguridad

Error delusuario

Aplicación de logs de flashback hacia atrás

Logs de flashback

Base de datosreparada

Flashback de Base de Datos

Flashback de Base de Datos: Reducción del Tiempo de RestauraciónLa función de flashback de base de batos es más rápida que la recuperación point-in-time tradicional que utiliza archivos restaurados y archivos redo log. A medida que una base de datos aumenta de tamaño, la cantidad de tiempo necesaria para restaurar todos los archivos de datos con el fin de llevar a cabo una recuperación point-in-time tradicional resulta prohibitiva. Con el flashback de base de datos, el tiempo para recuperar una base de datos es ahora proporcional al número de cambios que es necesario deshacer (y no al tamaño de la base de datos) porque no tiene que restaurar los archivos de datos.El flashback de base de datos se implementa mediante un tipo de archivo log denominado log de flashback de base de datos. La base de datos Oracle registra periódicamente “imágenes anteriores” de bloques de datos en los logs de flashback de base de datos. Las imágenes de bloque se pueden reutilizar para hacer retroceder con rapidez los cambios en los archivos de datos hasta cualquier momento en que se hayan capturado logs de flashback justo antes de la hora deseada. Entonces, se aplican los cambios a partir de los archivos redo log para rellenar el hueco. Los logs de flashback de base de datos se crean y gestionan de forma automática en el área de recuperación de flash.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 182: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Base de Datos: Consideraciones

• Una vez terminada la operación de flashback de base de datos, la base de datos se debe abrir mediante uno de los siguientes métodos:– En el modo de sólo lectura para verificar que se

han utilizado la hora o el SCN correctos– Con el parámetro RESETLOGS para permitir las

actualizaciones• Lo contrario de “flashback” es “recuperar”.

Flashback de Base de Datos: ConsideracionesEn situaciones en las que no pueda utilizar la función de flashback de base de datos, debería utilizar una operación de recuperación incompleta para devolver la base de datos a un momento específico. Una vez finalizada la operación de flashback de base de datos, puede abrir la base de datos en modo de sólo lectura para verificar que se han utilizado la hora o el número de cambio de sistema (SCN) correctos. De no ser así, puede volver a realizar la operación de flashback de base de datos de nuevo o bien llevar a cabo una recuperación para avanzar la base de datos. Para deshacer una operación de flashback de base de datos, por tanto, debe recuperar la base de datos hacia delante.Nota: El destino de retención de flashback no supone una garantía absoluta de que estédisponible la opción de flashback. Si se precisa espacio para archivos necesarios en el área de recuperación de flash, puede que los logs de flashback se supriman de forma automática.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 183: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-9

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Base de Datos: Limitaciones

No se puede utilizar la función de flashback de base de datos en las siguientes situaciones:• El archivo de control se ha restaurado o se ha

vuelto a crear.• Se ha borrado un tablespace.• Se ha reducido un archivo de datos.

PresenteTiempo de flashback

Borrar tablespace.

Reducir archivo de

datos.

Volver a crear un archivo de

control.

Flashback de Base de Datos: LimitacionesNo puede utilizar el flashback de base de datos para recuperar un archivo de datos que se ha borrado desde el tiempo de flashback. El archivo de datos borrado se agrega al archivo de control y se marca como offline, pero no se incluye en la operación de flashback. El flashback de base de datos no puede realizar un flashback en un archivo de datos si se ha reducido desde el tiempo de flashback. Cualquier archivo de datos de este tipo se debe poner offline antes de realizar una operación de flashback.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 184: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-10

Copyright © 2005, Oracle. Todos los derechos reservados.

Activación de la Función de Flashback de Base de Datos

Activación de la Función de Flashback de Base de DatosEl flashback de base de datos se puede activar en Enterprise Manager mediante el enlace Recovery Settings de la página con separadores Maintenance. Active la casilla de control de la región Flash Recovery de la página y especifique el tiempo de retención, que representa hasta qué punto del pasado desea realizar un flashback en la base de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 185: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Tabla:Visión General

• El flashback de tabla recupera tablas aun punto en el tiempo específico.

• El flashback de tabla se produce in situ.• La base de datos permanece online.

UsuarioDML

erróneosTablas con flashback

Visión GeneralBase de Datos

> TablaBorradoConsultaVersionesTransacción

Flashback de Tabla: Visión GeneralCon el flashback de tabla puede devolver un juego de tablas a un punto en el tiempo específico sin tener que realizar operaciones de recuperación point-in-time tradicionales.Una operación de flashback de tabla se realiza in situ mientras la base de datos está online mediante la realización de un rollback únicamente de los cambios efectuados en las tablas en cuestión y en los objetos que dependen de ellas.Una sentencia de flashback de tabla se ejecuta como una transacción única. Es necesario llevar a cabo un flashback en todas las tablas de forma correcta o se realizará un rollback de toda la transacción.Nota: La consulta de flashback de versiones y la consulta de flashback de transacciones permiten determinar el tiempo de flashback adecuado.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 186: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-12

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Tabla

• Con el flashback de tabla, puede devolver una o más tablas a un punto en el tiempo específico sin restaurar ninguna copia de seguridad.

• Los datos se recuperan de un tablespace de deshacer para realizar una operación de flashback de tabla.

• El privilegio FLASHBACK TABLE es necesario para realizar un flashback en una tabla.

• El movimiento de filas debe estar activado en la tabla en la que se vaya a realizar la operación de flashback.

Flashback de TablaCon el flashback de tabla, puede devolver una o más tablas a un punto en el tiempo específico sin restaurar ninguna copia de seguridad. Cuando se utiliza esta función, se restauran los datos de la tabla y los objetos asociados (índices, restricciones, disparadores, etc.). Los datos utilizadospara satisfacer una solicitud de flashback de tabla se recuperan del tablespace de deshacer.La consulta de flashback de versiones y la consulta de flashback de transacciones permiten determinar el tiempo de flashback adecuado. Para obtener más información sobre el uso de estas funciones, consulte Oracle Database Concepts.El flashback de tabla proporciona a los usuarios una manera fácil y rápida de recuperar modificaciones accidentales sin la participación del administrador de la base de datos (DBA). Es necesario otorgar el privilegio del sistema FLASHBACK TABLE o FLASHBACK ANY TABLE a cualquier usuario que utilice la función de flashback de tabla. Además, deberáotorgar los privilegios de objeto SELECT, INSERT, DELETE y ALTER TABLE al usuario.Puede utilizar Enterprise Manager para realizar un flashback en una tabla: El asistente le guiarápor el proceso.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 187: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Activación del Movimiento de Filas en una Tabla

ALTER TABLE employees ENABLE ROW MOVEMENT;

Activación del Movimiento de Filas en una TablaEs necesario activar el movimiento de filas en una tabla para poder realizar un flashback en ella. Al activar el movimiento de filas, el servidor de Oracle puede mover una fila de la tabla. Puede utilizar Enterprise Manager para activar el movimiento de filas.Con Enterprise Manager, puede activar el movimiento de filas de una tabla mediante los siguientes pasos:

1. Seleccione Tables en la región Schema de la página de propiedades Administration. Introduzca el nombre del esquema para buscar la tabla y haga clic en Go.

2. Haga clic en el nombre de la tabla en la que desea activar el movimiento de filas. Aparece la página View Table.

3. Haga clic en Edit para acceder a la página Edit Table.4. Haga clic en el separador Options, en el que podrá cambiar el valor de Enable Row

Movement de la tabla.5. Defina Enable Row Movement en Yes y haga clic en Apply.

Aparece el mensaje de confirmación de actualización.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 188: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-14

Copyright © 2005, Oracle. Todos los derechos reservados.

Realización de Flashback de Tabla

FLASHBACK TABLE hr.employees TO TIMESTAMPTO_TIMESTAMP('2005-05-05 05:32:00','YYYY-MM-DD HH24:MI:SS');

Realización de Flashback de TablaPuede realizar un flashback en una tabla en Enterprise Manager mediante los siguientes pasos:

1. Seleccione Perform Recovery en la región Backup/Recovery de la página de propiedades Maintenance. Aparece la página Perform Recovery.

2. En la región Object Level Recovery, seleccione Tables en la lista desplegable Object Type.3. Seleccione Flashback Existing Tables como Operation Type. Haga clic en Perform Object

Level Recovery. Aparece la página “Perform Object Level Recovery: Point-in-time”.4. Seleccione “Flashback to a timestamp” o “Flashback to a known SCN” y, a continuación,

especifique un registro de hora o SCN para realizar un flashback y haga clic en Next.5. Haga clic en Add Tables para agregar tablas a la lista de la operación de flashback. Haga

clic en Next.6. Si existen tablas dependientes, aparece la página Dependency Options. Seleccione la

opción que desee para gestionar las tablas dependientes. Normalmente, debería seleccionar “Cascade” para garantizar un flashback consistente. Haga clic en Next.

7. Aparece la página “Perform Object Level Recovery: Review”. Revise la información y haga clic en Submit. Aparecerá la página Confirmation.

Nota: También puede realizar un flashback de tablas a través del enlace Tables de la regiónSchema de la página Administration.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 189: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Tabla: Consideraciones

• El comando FLASHBACK TABLE se ejecuta como una sola transacción y adquiere bloqueos de DML exclusivos.

• El flashback no afecta a las estadísticas.• Se mantienen los índices y los objetos

dependientes actuales.• Operaciones de flashback de tabla:

– No se pueden realizar en tablas del sistema– No pueden abarcar operaciones de DDL– Se escriben en el archivo log de alertas– Generan datos de deshacer y de redo

Flashback de Tabla: Consideraciones• La sentencia FLASHBACK TABLE completa se ejecuta en una única transacción. Se realiza

un flashback en todas o en ninguna de las tablas especificadas.• La operación de flashback de tabla adquiere bloqueos de lenguaje de manipulación de

datos (DML) exclusivos en todas las tablas especificadas en la sentencia durante el período de tiempo en que la operación está en curso.

• El flashback no se aplica a las estadísticas de los objetos afectados.• Se mantienen todos los índices existentes. Los índices borrados no se vuelven a crear.

Las vistas materializadas dependientes de confirmación también se mantienen de forma automática.

• La sentencia FLASHBACK TABLE se escribe en el log de alertas.• Se realiza un flashback en las tablas especificadas mediante la sentencia FLASHBACK

TABLE, siempre que no se viole ninguna de las restricciones de las tablas. Si se viola alguna restricción durante la ejecución del flashback, la operación se aborta y las tablas permanecen en el mismo estado en el que se encontraban justo antes de la llamada a la sentencia FLASHBACK TABLE.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 190: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-16

Flashback de Tabla: Consideraciones (continuación)• No puede realizar un flashback de tabla a una hora concreta anterior a la hora de la

ejecución de una operación de lenguaje de definición de datos (DDL) que modificó la estructura de una tabla o que redujo una tabla que se iba a incluir en la operación de flashback. Esta restricción no se aplica a las sentencias DDL que sólo cambian los atributos de almacenamiento de las tablas.

• No se puede realizar un flashback de tabla en las tablas del sistema, las tablas remotas ni las tablas fijas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 191: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Borrado:Visión General

DROP TABLE employees; FLASHBACK TABLEemployeesTO BEFORE DROP;

Se cometióun error.

Papelerade reciclaje

Visión GeneralBase de DatosTabla

> BorradoConsultaVersionesTransacción

Flashback de Borrado: Visión GeneralCon la función de flashback de borrado puede deshacer los efectos de una sentencia DROPTABLE sin tener que utilizar la recuperación point-in-time tradicional. Esto es posible gracias a la papelera de reciclaje, que se puede consultar a través de la vista DBA_RECYCLEBIN.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 192: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Tablas Borradasmediante Enterprise Manager

También se realiza un flashbacken el índice de bitmap dependiente.

Flashback de Tablas Borradas mediante Enterprise ManagerPara realizar un flashback de tablas borradas con la Consola de Database Control, seleccione Perform Recovery en la región Backup/Recovery de la página Maintenance. Seleccione Tables para Object Type de la región Type y seleccione Flashback Dropped Tables en la región Operation Type. Después de realizar esta acción, haga clic en Perform Object Level Recovery.Ahora deberá ver la página “Perform Object Level Recovery: Dropped Objects Selection”, en la que puede seleccionar las tablas borradas de la papelera de reciclaje. También puede consultar el contenido de las tablas borradas haciendo clic en View Content. Seleccione las tablas que desee recuperar y haga clic en Next.Aparece la página “Perform Object Level Recovery: Rename”, en la que puede cambiar el nombre de la tabla si existe otra con el mismo nombre en el mismo esquema. Haga clic en Next para continuar. En la página “Perform Object Level Recovery: Review”, puede revisar los detalles de la operación, así como mostrar las sentencias SQL correspondientes. Cuando estépreparado, haga clic en Submit. Ahora debe aparecer la página Confirmation. Haga clic en OK para volver a la página Maintenance.Nota: También puede realizar un flashback de tablas borradas a través del enlace Tables de la región Schema de la página Administration. En la página Tables, haga clic en el botón Recycle Bin.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 193: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-19

Copyright © 2005, Oracle. Todos los derechos reservados.

Flashback de Borrado: Consideraciones

• La función de flashback de borrado no funciona con las tablas que:– Residen en el tablespace SYSTEM– Utilizan auditoría detallada o base de datos privada

virtual– Residen en un tablespace gestionado por

diccionario– Han sido depuradas, ya sea de forma manual o

automática por problema de espacio• Las siguientes dependencias no se protegen:

– Índices de unión de bitmap– Logs de vistas materializadas– Restricciones de integridad referencial– Índices borrados antes que las tablas

Flashback de Borrado: ConsideracionesLa función de flashback de borrado sólo funciona con tablas situadas en tablespaces gestionados de forma local (LMT) que no son SYSTEM. No obstante, en los objetos dependientes que residen en tablespaces gestionados por diccionario se realiza un flashback como parte de la operación de flashback del objeto principal que alberga LMT.En las tablas con políticas de auditoría detallada (FGA) o de base de datos privada virtual (VPD) definidas no se puede realizar una operación de flashback de borrado. Tampoco es posible realizar un flashback de borrado en una tabla que se haya depurado. Puede que se haya depurado manualmente con la sentencia PURGE o automáticamente por necesidad de espacio para otros objetos del tablespace.Al realizar un flashback de borrado en una tabla, también se realiza un flashback en todos los objetos dependientes de dicha tabla desde la papelera de reciclaje. Existen algunas excepciones: No se puede realizar un flashback en los índices de unión de bitmap, las restricciones de integridad referencial y los logs de vistas materializadas, aunque sí se pueda realizar en su tabla principal.Nota: Si borra un índice antes que la tabla a la que está asociado, la recuperación del índice no es posible cuando se hace un flashback de la tabla borrada.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 194: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-20

Copyright © 2005, Oracle. Todos los derechos reservados.

Acceso al Tiempode Flashback

• Consulta de flashback– Consultar todos los datos de un punto

en el tiempo determinado.• Consulta de flashback de versiones

– Ver todas las versiones de una fila entre dos horas.– Ver las transacciones que cambiaron la fila.

• Consulta de flashback de transacciones– Ver todos los cambios

que ha realizado unatransacción. Transacción 3

Transacción 1

Transacción 2

Tiempo

Flashback

Visión GeneralBase de DatosTablaBorrado

> ConsultaVersionesTransacción

Acceso al Tiempo de FlashbackLa tecnología de flashback ofrece la capacidad de consultar versiones anteriores de objetos de esquema, consultar datos históricos o realizar análisis de cambios. Cada transacción genera de forma lógica una nueva versión de la base de datos. Con la tecnología de flashback, puede navegar por estas versiones para buscar un error y su causa:

• Consulta de Flashback: Consulta de todos los datos existentes en un punto en el tiempodeterminado.

• Consulta de Flashback de Versiones: Visualización de todas las versiones de las filas entre dos horas y las transacciones que cambiaron la fila.

• Consulta de Flashback de Transacciones: Visualización de todos los cambios que ha realizado una transacción.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 195: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback: Visión General

t1 t2

SELECT employee_id, salary FROM employees

AS OF TIMESTAMP t1

WHERE employee_id = 200

EmployeesEmployees Actualizacionesno deseadas

Consulta de Flashback: Visión GeneralCon la función de consulta de flashback, puede realizar consultas en la base de datos relacionadas con un momento determinado. Al utilizar la cláusula AS OF de la sentencia SELECT, puede especificar el registro de hora para el que desea visualizar los datos. Esto resulta útil para analizar una discrepancia en los datos.Nota: A la cláusula AS OF le pueden seguir TIMESTAMP o SCN.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 196: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-22

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback: Ejemplo

11:00 11:10

UPDATE employees SET salary =(SELECT salary FROM employeesAS OF TIMESTAMP TO_TIMESTAMP

('2005-05-04 11:00:00', 'yyyy-mm-dd hh24:mi:ss')WHERE employee_id = 200)

WHERE employee_id = 200

EmployeesEmployees

salary = 4,400

Employees

salary = 4,400salary = 4,840

Consulta de Flashback: EjemploSi se ha concedido, por error, un aumento a un empleado recientemente, puede volver a actualizar el salario asignando el salario proporcionado mediante una subconsulta que devuelve el valor en el que se ha realizado el flashback.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 197: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-23

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback deVersiones: Visión General

t1 t2

Transacción 1 Transacción 2

SELECT versions_xid, salary FROM employees

VERSIONS BETWEEN TIMESTAMP t1 and t2

WHERE employee_id = 200;

Transacción 0

Transacción 0 Transacción 1 Transacción 2

Employees EmployeesEmployees

200

Visión GeneralBase de DatosTablaBorradoConsulta

> VersionesTransacción

Consulta de Flashback de Versiones: Visión GeneralCon la función de consulta de flashback, puede realizar consultas en la base de datos a partir de un intervalo de tiempo determinado o un rango de números de cambio del sistema (SCN) especificado por el usuario. La función de consulta de flashback de versiones permite utilizar la cláusula VERSIONS para recuperar todas las versiones de las filas existentes entre dos puntos en el tiempo o dos SCN.Las filas devueltas por la consulta de flashback de versiones representan un historial de cambios de las filas entre transacciones. La consulta de flashback de versiones sólo recupera las incidencias confirmadas de las filas. Las versiones no confirmadas de las filas de una transacción no se muestran. Las filas devueltas también incluyen las versiones suprimidas y las posteriormente insertadas de dichas filas.Puede utilizar la consulta de flashback de versiones para recuperar el historial de filas. Esto ofrece una forma de auditar las filas de una tabla y recuperar información sobre las transacciones que han afectado a las filas. A continuación, puede utilizar el identificador de transacción devuelto para realizar una extracción de transacción mediante LogMiner o realizar una consulta de flashback de versiones, que se tratará más adelante en esta lección.Nota: En el ejemplo, VERSIONS_XID es una pseudocolumna que devuelve el identificador de transacción de la versión correspondiente de una fila.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 198: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-24

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback de Versiones mediante Enterprise Manager

Consulta de Flashback de Versiones mediante Enterprise ManagerLa consulta de flashback de versiones también se puede llevar a cabo mediante Enterprise Manager. En la página Maintenance, seleccione Perform Recovery. En la página Perform Recovery, seleccione Tables en Object Type y Flashback Existing Tables en Operation Type. Haga clic en Perform Object Level Recovery. En la página “Perform Object Level Recovery: Point-in-Time”, seleccione “Evaluate row changes and transactions to decide on a point in time” y especifique el nombre de la tabla de destino.Seleccione las columnas que desee visualizar en el recuadro Available Columns y, a continuación, introduzca una cláusula de búsqueda en el recuadro Bind The Row Value. Seleccione “Show all row history” y haga clic en Next.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 199: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-25

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback de Versiones: Consideraciones

• La cláusula VERSIONS no se puede utilizar para realizar consultas en:– Tablas externas– Tablas temporales– Tablas fijas– Vistas

• La cláusula VERSIONS no puede abarcar comandos DDL.

• Las operaciones de reducción de segmentos se filtran.

Consulta de Flashback de Versiones: ConsideracionesLa cláusula VERSIONS no se puede utilizar para consultar las siguientes tablas especiales:

• Tablas externas • Tablas temporales • Tablas fijas

No puede utilizar la cláusula VERSIONS para realizar una consulta en una vista. Sin embargo, una definición de vista puede utilizar la cláusula VERSIONS. La cláusula VERSIONS en una sentencia SELECT no puede producir versiones de filas en las sentencias DDL que cambian la estructura de las tablas correspondientes. Esto significa que la consulta deja de producir filas cuando alcanza una hora del pasado en que se cambió la estructura. Ciertas operaciones de mantenimiento, como la reducción de un segmento, pueden mover las filas de la tabla de un bloque a otro. En tal caso, la consulta de versiones filtra estas versiones fantasma porque los datos de la fila permanecen sin cambios.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 200: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-26

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback deTransacciones: Visión General

SQL dedeshacer

FLASHBACK_TRANSACTION_QUERY

DBA

Usuario

DMLerróneo

Visión GeneralBase de DatosTablaBorradoConsultaVersiones

> Transacción

Consulta de Flashback de Transacciones: Visión GeneralLa consulta de flashback de transacciones es una herramienta de diagnóstico que puede utilizar para ver los cambios realizados en la base de datos a nivel de transacción. Permite diagnosticar los problemas de la base de datos y realizar análisis y auditorías de transacciones. Puede utilizar la vista FLASHBACK_TRANSACTION_QUERY con el fin de determinar todas las sentencias SQL necesarias que se pueden usar para deshacer los cambios realizados por una transacción concreta o durante un período de tiempo específico.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 201: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-27

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback de Transacciones mediante Enterprise Manager

Consulta de Flashback de Transacciones mediante Enterprise ManagerEsta función se utiliza junto con la función de consulta de flashback de versiones con la ayuda del asistente Perform Recovery. En la página “Perform Object Level Recovery: Choose SCN”, haga clic en el enlace Transaction ID correspondiente en la región Flashback Versions Query Result.En el ejemplo de la diapositiva, se realiza una consulta de flashback de versiones en la tabla JOBS para recuperar las tres versiones de la fila JOBS de JOB_ID = 'AD_PRES'. A continuación, se hace clic en uno de los identificadores de transacción, con lo que muestran todos los cambios que formaban parte de la transacción. Observe que, además de la actualización de la tabla JOB, también se actualizó la tabla EMPLOYEES en dicha transacción.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 202: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-28

Copyright © 2005, Oracle. Todos los derechos reservados.

Consulta de Flashback de Transacciones: Consideraciones

• Los procedimientos DDL se consideran como actualizaciones de diccionario.

• Los objetos borrados aparecen como números de objeto.

• Los usuarios borrados aparecen como identificadores de usuario.

Consulta de Flashback de Transacciones: Consideraciones• Dentro de la base de datos, las operaciones DDL no son más que una serie de operaciones

de gestión de espacio y cambios en el diccionario de datos. Una consulta de flashback de transacciones en una transacción subyacente a un DDL muestra los cambios realizados en el diccionario de datos.

• Cuando la consulta de flashback de transacciones implica tablas borradas de la base de datos, los nombres de las tablas no se reflejan. En su lugar, se utilizan números de objeto.

• Si el usuario que ejecutó una transacción se borra, la consulta de flashback de transacciones de dicha transacción muestra el identificador de usuario correspondiente en lugar del nombre de usuario.

Nota: Cuando no hay datos de deshacer suficientes para una transacción concreta, se devuelve una fila con el valor UNKNOWN en la columna OPERATION de FLASHBACK_TRANSACTION_QUERY.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 203: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-29

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Describir la función de flashback de base de datos• Restaurar el contenido de la tabla a un punto

específico en el pasado con flashback de tabla• Recuperar una tabla borrada• Visualizar el contenido de la base de datos desde

cualquier punto en el tiempo con consulta de flashback

• Visualizar las versiones de una fila a lo largo del tiempo con consulta de flashback de versiones

• Visualizar el historial de transacciones o una fila con consulta de flashback de transacciones

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 204: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 17-30

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica:Uso de Flashback

En esta práctica se abordan los siguientes temas:• Uso de flashback para recuperar una tabla borrada• Realización de una consulta de flashback de

versiones

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 205: Taller I DBA-Oracle 2

Copyright © 2005, Oracle. Todos los derechos reservados.

Movimiento de Datos

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 206: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-2

Copyright © 2005, Oracle. Todos los derechos reservados.

Objetivos

Al finalizar esta lección, debería estar capacitado para lo siguiente:• Describir las formas disponibles para mover datos• Crear y utilizar objetos de directorio• Utilizar SQL*Loader para cargar datos de una base

de datos que no sea Oracle (o archivos de usuario)• Explicar la arquitectura general del pump de datos• Utilizar la exportación e importación de pump de

datos para mover datos entre las bases de datos Oracle

• Utilizar las tablas externas para mover datos a través de archivos independientes de la plataforma

Objeto de DirectorioSQL*LoaderPump de Datos- Exportación- ImportaciónTabla Externa

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 207: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-3

Copyright © 2005, Oracle. Todos los derechos reservados.

Movimiento de Datos: Arquitectura General

API de tabla externa

Cargadorde Oracle

Pump dedatos deOracle

API de rutade acceso directa

API demetadatos

expdp impdp Otros clientes

Pump de datos

Motor de movimiento de datos/metadatosDBMS_DATAPUMP

SQL*Loader

Movimiento de Datos: Arquitectura GeneralEste diagrama de bloques muestra los principales componentes funcionales:• DBMS_DATAPUMP: Este paquete incorpora la API para las utilidades de exportación e

importación de alta velocidad destinadas al movimiento de datos en bloque y metadatos.• API de ruta de acceso directa (DPAPI): La base de datos Oracle 10g soporta una interfaz

de API de ruta de acceso directa que minimiza el análisis y la conversión de datos tanto en la carga como en la descarga.

• DBMS_METADATA: Los procesos de worker utilizan este paquete para cargar y descargar todos los metadatos. Las definiciones de objetos de base de datos se almacenan mediante XML en lugar de SQL.

• API de tabla externa: Con los controladores de acceso ORACLE_DATAPUMP y ORACLE_LOADER, se pueden almacenar datos en tablas externas (es decir, en archivos independientes de la plataforma). La sentencia SELECT lee tablas externas como si estuvieran almacenadas en una base de datos Oracle.

• SQL*Loader: Se ha integrado el cliente de SQL*Loader con las tablas externas, lo que permite la migración automática de los archivos de control del cargador a los parámetros de acceso de las tablas externas.

• expdp e impdp: Los clientes expdp e impdp son capas finas que realizan llamadas al paquete DBMS_DATAPUMP para iniciar y controlar las operaciones de pump de datos.

• Otros clientes: Son aplicaciones como Database Control, la replicación, los tablespaces transportables y las aplicaciones de usuario que se benefician de esta infraestructura. También se puede utilizar SQL*Plus a modo de cliente de DBMS_DATAPUMP para realizar consultas de estado simples sobre operaciones en curso.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 208: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-4

Copyright © 2005, Oracle. Todos los derechos reservados.

Objeto de Directorio:Visión General

Objeto de Directorio: Visión GeneralLos objetos de directorio son estructuras lógicas que representan un directorio físico en el sistema de archivos del servidor. Contienen la ubicación de un directorio del sistema operativo específico. Este nombre de objeto de directorio se puede utilizar en Enterprise Manager, por lo que no es necesario codificar las especificaciones de la ruta de acceso al directorio. Por lo tanto, se obtiene una mayor flexibilidad de gestión de archivos. Los objetos de directorio son propiedad del usuario SYS. Los nombres de directorio son únicos en la base de datos porque todos los directorios se ubican en un espacio de nombres único (es decir, SYS).Los objetos de directorio son necesarios cuando se especifican ubicaciones de archivos para pump de datos porque éste accede a los archivos en el servidor en vez de en el cliente.En Enterprise Manager, seleccione Administration > Directory Objects.Para editar o suprimir un objeto de directorio, seleccione el objeto de directorio y haga clic en el botón correspondiente.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 209: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-5

Copyright © 2005, Oracle. Todos los derechos reservados.

Creación de Objetos de Directorio

4

3

2

1

5

Creación de Objetos de Directorio1. En la página Directory Objects, haga clic en el botón Create. 2. Introduzca el nombre del objeto de directorio y la ruta del sistema operativo al que se asigna.

Los directorios del sistema operativo se deben crear antes de utilizarse. Puede probarlo si hace clic en el botón “Test File System”. Para la prueba, proporcione las credenciales de conexión al host (es decir, el usuario del sistema operativo que tiene privilegios en este directorio del sistema operativo).

3. Los permisos para los objetos de directorio no son los mismos que los permisos del sistema operativo del directorio físico del sistema de archivos del servidor. Puede gestionar los privilegios de usuario en los objetos de directorio individuales. Esto aumenta el nivel de seguridad y proporciona un control más específico sobre dichos objetos. En la página con separadores Privileges, haga clic en Add para seleccionar el usuario al que desea otorgar privilegios de lectura, de escritura o ambos.

4. Haga clic en Show SQL para visualizar las sentencias subyacentes.5. Haga clic en OK para crear el objeto.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 210: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-6

Copyright © 2005, Oracle. Todos los derechos reservados.

SQL*Loader: Visión General Objeto de Directorio> SQL*Loader

Pump de Datos- Exportación- ImportaciónTabla Externa

Archivos de datos de entrada

Archivo de control

SQL*Loader

Archivo log

Insertado

Seleccionado

Rechazado

Archivo de errores

Rechazado

Selección de registrosAceptado

Archivo de desechos(opcional)

Desechado

Procesamiento de campos

Servidor de Oracle

SQL*Loader: Visión GeneralSQL*Loader carga datos de archivos externos en tablas de una base de datos Oracle. Dispone de un potente sistema de análisis de datos que limita muy poco el formato de los datos en el archivo de datos. Los archivos que utiliza SQL*Loader son los siguientes:Archivos de datos de entrada: SQL*Loader lee datos de uno o más archivos (o equivalentes de archivos del sistema operativo) especificados en el archivo de control. Desde la perspectiva de SQL*Loader, los datos del archivo de datos se organizan en registros. Un archivo de datos concreto puede tener un formato de registro fijo, variable o de flujo. El formato de registro se puede especificar en el archivo de control con el parámetro INFILE. Si no se especifica ningún formato de registro, el valor por defecto es el formato de registro de flujo.Archivo de control: El archivo de control es un archivo de texto escrito con un lenguaje que SQL*Loader comprende. El archivo de control indica a SQL*Loader dónde encontrar los datos, cómo analizarlos e interpretarlos, dónde insertarlos, etc. Aunque no está definido de forma precisa, se puede decir que un archivo de control tiene tres secciones.

• La primera sección contiene amplia información de sesiones, por ejemplo: - Opciones globales, como el nombre del archivo de datos de entrada y los registros

que se van a saltar- Cláusulas INFILE para especificar dónde localizar los datos de entrada- Datos que se van a cargar

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 211: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-7

SQL*Loader: Visión General (continuación)• La segunda sección se compone de uno o más bloques INTO TABLE. Cada uno de estos

bloques contiene información sobre la tabla (como el nombre de tabla y las columnas de la misma) en la que se van a cargar los datos.

• La tercera sección es opcional y, si está presente, contiene datos de entrada.Archivo log: Cuando SQL*Loader inicia la ejecución, crea un archivo log. Si no puede crear un archivo log, la ejecución termina. El archivo log contiene un resumen detallado de la carga, que incluye una descripción de cualquier error producido durante la carga.Archivo de errores: El archivo de errores contiene registros que fueron rechazados, por SQL*Loader o por la base de datos Oracle. SQL*Loader rechaza los registros de archivos de datos cuando el formato de entrada no es válido. Una vez que SQL*Loader acepta un registro de archivo de datos para su procesamiento, éste se envía a la base de datos Oracle para su inserción en una tabla como una fila. Si la base de datos Oracle determina que la fila es válida, ésta se inserta en la tabla. Si se determina que la fila no es válida, se rechaza el registro y SQL*Loader lo pone en el archivo de errores.Archivo de desechos: Este archivo se crea sólo cuando es necesario y si se ha especificado que se active uno. El archivo de desechos contiene registros que se han filtrado de la carga porque no coinciden con ningún criterio de selección de registro especificado en el archivo de control.Para obtener más información sobre SQL*Loader, consulte la documentación Oracle Database Utilities Guide.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 212: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-8

Copyright © 2005, Oracle. Todos los derechos reservados.

Carga de Datos con SQL*Loader

Carga de Datos con SQL*LoaderUtilice el asistente Load Data from User Files para cargar datos de un archivo plano a una base de datos Oracle. Para visualizar el asistente, seleccione Enterprise Manager Maintenance > Data Movement > Move Row Data > Load Data from User Files. El asistente le guiará por los pasos necesarios.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 213: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-9

Copyright © 2005, Oracle. Todos los derechos reservados.

Archivo de Control de SQL*Loader

El archivo de control de SQL*Loader le indica a SQL*Loader lo siguiente:• La ubicación de los datos que se van a cargar• El formato de los datos• Los detalles de configuración:

– Gestión de memoria– Rechazo de registros– Detalles de manejo de cargas interrumpidas

• Los detalles de manipulación de datos

Archivo de Control de SQL*LoaderEl archivo de control de SQL*Loader es un archivo de texto que contiene instrucciones de lenguaje de definición de datos (DDL). DDL se utiliza para controlar los siguientes aspectos de una sesión de SQL*Loader:

• Dónde encuentra SQL*Loader los datos que se van a cargar• Qué formato espera SQL*Loader que tengan los datos• Cómo se configura SQL*Loader (incluida la gestión de memoria, el rechazo de registros,

el manejo de cargas interrumpidas, etc.) cuando carga los datos• Cómo manipula SQL*Loader los datos que se están cargando

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 214: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-10

Archivo de Control de SQL*Loader (continuación)1 -- This is a sample control file2 LOAD DATA3 INFILE ’SAMPLE.DAT’4 BADFILE ’sample.bad’5 DISCARDFILE ’sample.dsc’6 APPEND7 INTO TABLE emp8 WHEN (57) = ’.’9 TRAILING NULLCOLS10 (hiredate SYSDATE,

deptno POSITION(1:2) INTEGER EXTERNAL(3)NULLIF deptno=BLANKS,

job POSITION(7:14) CHAR TERMINATED BY WHITESPACENULLIF job=BLANKS "UPPER(:job)",mgr POSITION(28:31) INTEGER EXTERNALTERMINATED BY WHITESPACE, NULLIF mgr=BLANKS,

ename POSITION(34:41) CHARTERMINATED BY WHITESPACE "UPPER(:ename)",empno POSITION(45) INTEGER EXTERNALTERMINATED BY WHITESPACE,sal POSITION(51) CHAR TERMINATED BY WHITESPACE"TO_NUMBER(:sal,’$99,999.99’)",comm INTEGER EXTERNAL ENCLOSED BY ’(’ AND ’%’":comm * 100"

)

La explicación de un archivo de control de ejemplo por números de línea es la siguiente:1. Pueden aparecer comentarios en cualquier lugar de la sección de comandos del archivo, pero

no deben aparecen dentro de los datos. Escriba dos guiones delante de cualquier comentario. Se ignora todo el texto situado a la derecha del guión doble, hasta el final de la línea.

2. La sentencia LOAD DATA indica a SQL*Loader que éste es el inicio de una nueva carga de datos. Si continúa con una carga que se interrumpió cuando estaba en curso, utilice la sentencia CONTINUE LOAD DATA.

3. La palabra clave INFILE especifica el nombre de un archivo que contiene los datos que desea cargar.

4. La palabra clave BADFILE especifica el nombre de un archivo en el que se colocan los registros rechazados.

5. La palabra clave DISCARDFILE especifica el nombre de un archivo en el que se colocan los registros desechados.

6. La palabra clave APPEND es una de las opciones que puede utilizar al cargar datos en una tabla que no está vacía. Para cargar datos en una tabla que está vacía, utilice la palabra clave INSERT.

7. La palabra clave INTO TABLE permite identificar tablas, campos y tipos de dato. Define la relación entre registros del archivo de datos y tablas de la base de datos.

8. La cláusula WHEN especifica una o más condiciones de campo con las que deben coincidir los registros para que SQL*Loader cargue los datos. En este ejemplo, SQL*Loader sólo carga el registro si el carácter 57 es un punto decimal. Dicho punto decimal delimita los dólares y los céntimos en el campo y hace que los registros se rechacen si SAL no tiene ningún valor.

9. La cláusula TRAILING NULLCOLS pide a SQL*Loader que trate cualquier columna con una ubicación relativa que no esté en el registro como columna nula.

10. El resto del archivo de control contiene la lista de campos, que proporciona información sobre los formatos de columna en la tabla que se está cargando.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 215: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-11

Copyright © 2005, Oracle. Todos los derechos reservados.

Métodos de Carga

No carga en clustersPuede cargar en tablas en cluster

No arranca disparadores INSERTArranca disparadores INSERT

Aplica sólo PRIMARY KEY, UNIQUE y NOT NULLAplica todas las restricciones

Permite que otros usuarios modifiquen las tablas durante la operación de carga

Siempre genera entradas de redo

Utiliza COMMIT

Carga Convencional

Utiliza datos guardados (operación más rápida)

Evita que otros usuarios realicen cambios en las tablas durante la operación de carga

Genera un redo sólo en condiciones concretas

Carga de Ruta de Acceso Directa

Tabla

Escriturasde bloques

Límite superior

Inserción de datos

Comparación de las Cargas de Ruta de Acceso Directa y ConvencionalMétodo para Guardar DatosLas cargas de ruta de acceso convencional utilizan el procesamiento SQL y la operación COMMIT de base de datos para guardar datos. La inserción de una matriz de registros va seguida de una operación COMMIT. Cada carga de datos puede implicar varias transacciones.Las cargas de ruta de acceso directa utilizan almacenamientos de datos para escribir bloques de datos en archivos de datos Oracle. Por eso la carga de ruta de acceso directa es más rápida que la convencional. Las siguientes funciones diferencian guardar datos de COMMIT:

• Durante el proceso de guardar datos, sólo se escriben bloques completos de base de datos en la base de datos.

• Los bloques se escriben después del límite superior de la tabla.• Después de guardar datos, se mueve el límite superior.• Los recursos internos no se liberan después de guardar datos.• Al guardar datos no termina la transacción.• Los índices no se actualizan cada vez que se guardan datos.

Nota: Las cargas de ruta de acceso directa y paralela son tan parecidas con respecto a las actividades de DML que no se han diferenciado en esta comparación.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 216: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-12

Comparación de las Cargas de Ruta de Acceso Directa y Convencional (continuación)

Registro de CambiosLa carga de ruta de acceso convencional genera entradas de redo de forma similar a cualquier sentencia DML. Al utilizar una carga de ruta de acceso directa, no se generan entradas de redo si:

• La base de datos está en modo NOARCHIVELOG.• La base de datos está en modo ARCHIVELOG, pero el registro está desactivado. El registro

se puede desactivar definiendo el atributo NOLOGGING para la tabla o utilizando la cláusula UNRECOVERABLE en el archivo de control.

Aplicación de RestriccionesDurante una carga de ruta de acceso convencional, todas las restricciones activadas se aplican de la misma forma que durante cualquier operación DML.Durante las cargas de ruta de acceso directa, las restricciones se manejan de la siguiente forma:

• Las restricciones NOT NULL se comprueban cuando se crean las matrices.• Las restricciones FOREIGN KEY y CHECK se desactivan y se pueden activar al final de

la carga mediante los comandos adecuados del archivo de control. Las restricciones FOREIGN KEY se desactivan porque hacen referencia a otras filas o tablas y las restricciones CHECK se desactivan porque pueden utilizar funciones SQL. Si sólo va a insertan un pequeño número de filas en una tabla grande, utilice las cargas convencionales.

• Las restricciones PRIMARY KEY y UNIQUE se comprueban durante la carga y al final de la misma, y se pueden desactivar si se violan.

Arranque de Disparadores INSERTLos disparadores WHILE INSERT se arrancan durante las cargas convencionales; se desactivan antes de una carga de ruta de acceso directa y se vuelven a activar al final de la carga. Pueden permanecer desactivados si al final de la ejecución no se puede acceder a un objeto al que se hace referencia. Considere el uso de cargas de ruta de acceso convencional para cargar datos en tablas con disparadores INSERT.Carga en Tablas en ClusterNo se pueden utilizar cargas directas para cargar filas en tablas en cluster. Las tablas en cluster se pueden cargar sólo mediante cargas de ruta de acceso convencional.BloqueoMientras una carga de ruta de acceso directa está en curso, ninguna otra transacción puede realizar cambios en las tablas que se están cargando. La única excepción a esta regla se produce cuando se utilizan simultáneamente varias sesiones de carga directa paralela.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 217: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-13

Copyright © 2005, Oracle. Todos los derechos reservados.

Pump de Datos:Visión General

Como utilidad basada en el servidor para el movimiento de datos y metadatos de alta velocidad, el pump de datos:• Se puede llamar a través de DBMS_DATAPUMP• Proporciona las siguientes herramientas:

– expdp

– impdp

– Interfaz basada en Web• Proporciona métodos de acceso a los datos:

– Ruta de acceso directa– Tablas externas

• Desconecta y vuelve a conectar trabajos de larga ejecución• Reinicia trabajos de pump de datos

Objeto de DirectorioSQL*Loader

> Pump de Datos- Exportación- ImportaciónTabla Externa

Pump de Datos: Visión GeneralEl pump de datos permite la carga y descarga de datos y metadatos a velocidad muy alta en las bases de datos Oracle. La infraestructura de pump de datos se puede llamar a través del paquete PL/SQL DBMS_DATAPUMP. Por tanto, es posible crear utilidades personalizadas para mover datos mediante pump de datos. La base de datos Oracle 10g soporta las siguientes herramientas:

• Clientes de exportación e importación de línea de comandos, denominados expdp eimpdp, respectivamente

• Una interfaz de exportación e importación basada en Web a la que se puede acceder desde Database Control

El pump de datos decide automáticamente los métodos de acceso a los datos que se van a utilizar; puede ser una ruta de acceso directa o tablas externas. El pump de datos utiliza la carga y la descarga de ruta de acceso directa cuando la estructura de una tabla lo permite y cuando se desea un rendimiento máximo de flujo único. No obstante, si existen tablas en cluster, restricciones de integridad referencial, columnas cifradas u otros elementos, el pump de datos utiliza las tablas externas en lugar de la ruta de acceso directa para mover los datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 218: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-14

Pump de Datos: Visión General (continuación)La capacidad para desconectar trabajos de larga duración y volver a conectarlos sin que esto afecte al trabajo en sí permite controlar los trabajos desde diversas ubicaciones mientras se ejecutan. Todos los trabajos de pump de datos parados se pueden reiniciar sin que se produzcan pérdidas de datos, siempre que la metainformación permanezca sin cambios. No importa si el trabajo se paró voluntaria o involuntariamente debido a un fallo.Nota: El pump de datos es una función integral de la base de datos Oracle 10g y, por tanto, está disponible en todas las configuraciones. No obstante, el paralelismo sólo está disponible en Enterprise Edition.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 219: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-15

Copyright © 2005, Oracle. Todos los derechos reservados.

Pump de Datos: Ventajas

• Selección de objetos y datos detallada• Especificación explícita de la versión de la base

de datos• Ejecución en paralelo• Estimación del consumo de espacio del trabajo de

exportación• Modo de red en entornos distribuidos• Capacidades de nueva asignación durante la

importación• Ejemplo de datos y compresión de metadatos

Pump de Datos: VentajasSe utilizan los parámetros EXCLUDE, INCLUDE y CONTENT para la selección detallada de objetos y datos.Puede especificar la versión de la base de datos correspondiente a los objetos que se moverán (gracias al parámetro VERSION) con el fin de crear un juego de archivos de volcado compatiblecon una versión anterior de la base de datos Oracle que soporte pump de datos.Se puede utilizar el parámetro PARALLEL para especificar el número máximo de threads de servidores de ejecución activos que usará el trabajo de exportación.Asimismo, cabe la posibilidad de calcular la cantidad de espacio que consumirá un trabajo de exportación (sin necesidad de realizar la exportación realmente) mediante el parámetro ESTIMATE_ONLY.El modo de red permite llevar a cabo la exportación desde una base de datos remota directamente a un juego de archivos de volcado. Esto se puede hacer a través de un enlace de base de datos con el sistema origen.Durante la importación, se pueden modificar los tablespaces, los esquemas y los nombres de los archivos de datos del sistema destino.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 220: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-16

Pump de Datos: Ventajas (continuación)Además, la base de datos Oracle 10g permite especificar un porcentaje de datos para que se tomen como ejemplo y se descarguen de la base de datos origen al realizar una exportación de pump de datos. Esto se puede realizar especificando el parámetro SAMPLE.Puede utilizar el parámetro COMPRESSION para indicar si se deben comprimir los metadatos en el archivo de volcado de exportación, de manera que consuman menos espacio en el disco. Si comprime los metadatos, se descomprimirán automáticamente durante la importación.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 221: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-17

Copyright © 2005, Oracle. Todos los derechos reservados.

Exportación e Importación de Pump de Datos: Visión GeneralCliente

expdp

Juego dearchivos

de volcado

Base dedatos

Trabajode pump de

datos

Origen

Tablamaestra

Procesode servidor

Juego dearchivos

de volcado

Procesode servidor

Destino

Trabajode pump de

datos

Clienteimpdp

Base dedatosTabla

maestra

Enlace de base de datos

“Modo de red”

Exportación e Importación de Pump de Datos: Visión GeneralLa utilidad de exportación de pump de datos permite descargar datos y metadatos a un juego de archivos del sistema operativo denominado juego de archivos de volcado. La utilidad de importación de pump de datos se utiliza para cargar metadatos y datos almacenados en un juego de archivos de volcado de exportación en un sistema destino.La API de pump de datos accede a sus archivos en el servidor, no en el cliente.Estas utilidades también se pueden utilizar para llevar a cabo la exportación directamente desde una base de datos remota a un juego de archivos de volcado, o bien para cargar la base de datos destino directamente desde una base de datos origen sin archivos implicados. Esto se conoce como modo de red. Este modo resulta especialmente útil para exportar datos desde una base de datos origen de sólo lectura.En el núcleo de toda operación de pump de datos está la tabla maestra, que es una tabla creada en el esquema del usuario que ejecuta un trabajo de pump de datos. Esta tabla conserva todos los aspectos del trabajo. La tabla maestra se crea durante un trabajo de exportación basado en archivos y se escribe en el juego de archivos de volcado en el último paso. Por el contrario, la carga de la tabla maestra en el esquema del usuario actual constituye el primer paso de una operación de importación basada en archivos, y se utiliza para secuenciar la creación de todos los objetos importados.Nota: La tabla maestra es la clave de la capacidad de reinicio de pump de datos en caso de que se produzca una parada del trabajo, ya sea planificada o no. Esta tabla se borra cuando el trabajo de pump de datos finaliza de forma normal.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 222: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-18

Copyright © 2005, Oracle. Todos los derechos reservados.

Utilidad Pump de Datos: Interfaces y Modos

• Interfaces de exportación e importación de pump de datos:– Línea de comandos– Archivo de parámetros– Línea de comandos interactiva– Database Control

• Modos de exportación e importación de pump de datos:– Completa– Esquema– Tabla– Tablespace– Tablespace transportable

Utilidad Pump de Datos: Interfaces y ModosPuede interactuar con la exportación y la importación de pump de datos mediante cualquiera de estas interfaces:

• La interfaz de línea de comandos permite especificar la mayor parte de los parámetros de exportación directamente en la línea de comandos.

• La interfaz de archivo de parámetros permite especificar todos los parámetros de línea de comandos en un archivo de parámetros. La única excepción es el parámetro PARFILE.

• La interfaz de línea de comandos interactiva para el registro en el terminal y muestra los prompts de exportación o importación, en los que puede introducir diversos comandos. Para activar este modo, pulse [Ctrl] + [C] durante una operación de exportación iniciada con la interfaz de línea de comandos o de archivo de parámetros. El modo de línea de comandos interactiva también se activa cuando se conecta un trabajo en ejecución o parado.

• También puede acceder a la interfaz Web. En la página inicial de Database Control, haga clic en el separador Maintenance y, a continuación, seleccione uno de los siguientes enlaces de la región Utilities: Export to Files, Import from Files o Import from Database.

Las utilidades de exportación e importación de pump de datos ofrecen diversos modos para descargar y cargar porciones diferentes de la base de datos. El modo se especifica en la línea de comandos mediante el parámetro adecuado. Los modos disponibles aparecen en la diapositiva y son los mismos que en las utilidades de exportación e importación originales.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 223: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-19

Copyright © 2005, Oracle. Todos los derechos reservados.

Selección de Objetos Detallada .Objeto de DirectorioSQL*LoaderPump de Datos

> - Exportación- ImportaciónTabla Externa

Selección de Objetos DetalladaEl trabajo de pump de datos puede incluir o excluir prácticamente cualquier tipo de objeto.El parámetro EXCLUDE permite excluir cualquier tipo de objeto de base de datos de una operación de exportación o importación. El cualificador de nombre opcional ofrece una capacidad de selección más detallada dentro de cada uno de los tipos de objetos especificados. Ejemplos:

EXCLUDE=VIEWEXCLUDE=PACKAGEEXCLUDE=INDEX:"LIKE 'EMP%'"

El parámetro INCLUDE sólo incluye los objetos y los tipos de objetos especificados en una operación. Sintaxis:

INCLUDE = object_type[:"name_expr"]

El parámetro CONTENT permite solicitar para la operación actual sólo los metadatos, sólo los datos o ambos. Sintaxis:

CONTENT = ALL | METADATA_ONLY | DATA_ONLY

El parámetro QUERY funciona de forma similar a como lo hace en la utilidad de exportación original, pero con dos mejoras significativas: se puede cualificar con un nombre de tabla de forma que sólo se aplique a dicha tabla y, además, se puede utilizar también durante la importación. Ejemplo:

QUERY=hr.employees:"WHERE department_id in (10,20) and salary < 1600 ORDER BY department_id"

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 224: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-20

Copyright © 2005, Oracle. Todos los derechos reservados.

Función Avanzada: Creación de Ejemplos

• Tarea: Crear datos de prueba.• Método: Especificar un porcentaje de datos para que

se tomen como ejemplo y se descarguen de la base de datos.

Ejemplo para descargar el 44% de la tabla HR.EMPLOYEES:

Ejemplo para descargar el 30% del trabajo de exportación completo (porque no se ha especificado ningún nombre de tabla):expdp hr/hr DIRECTORY=DATA_PUMP_DIR

DUMPFILE=sample1.dmp SAMPLE=30

SAMPLE="HR"."EMPLOYEES":44

Función Avanzada: Creación de EjemplosCon el parámetro SAMPLE puede especificar un porcentaje de datos para que se tomen como ejemplo y se descarguen de la base de datos origen al realizar una exportación de pump de datos.Sintaxis:

SAMPLE=[[schema_name.]table_name:]sample_percent

Rango de sample_percent: de 0.000001 a 100 (sin incluir)El porcentaje del ejemplo indica la probabilidad de que se incluya un bloque de filas.Nota: El parámetro SAMPLE no es válido para las exportaciones de red.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 225: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-21

Copyright © 2005, Oracle. Todos los derechos reservados.

Opciones de Exportación: Archivos

Opciones de Exportación: ArchivosLos trabajos de pump de datos gestionan tres tipos de archivos:

• Archivos de volcado de datos y metadatos que se van a mover• Archivos log de mensajes• Archivos SQL de salida de una operación SQLFILE

Ya que el pump de datos se basa en el servidor y no en el cliente, para acceder a los archivos asociados a esta utilidad se utilizan rutas de acceso de directorio Oracle. Las rutas de acceso absolutas no están soportadas por motivos de seguridad.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 226: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-22

Copyright © 2005, Oracle. Todos los derechos reservados.

Ubicaciones de los Archivos de Pump de Datos

Orden de prioridad de las ubicaciones de archivos:• Directorio de cada archivo• Parámetro DIRECTORY• Variable de entorno DATA_PUMP_DIR• Objeto de directorio DATA_PUMP_DIR

Ubicaciones de los Archivos de Pump de DatosEn la diapositiva se muestra el orden de prioridad utilizado por los clientes de pump de datos para localizar estos archivos:

• Es posible especificar objetos de directorio por cada archivo de volcado, archivo log y archivo SQL. En caso de especificarlos, se deben separar del nombre de archivo mediante dos puntos (:).

• Los clientes de exportación e importación de pump de datos proporcionan un parámetro DIRECTORY que especifica el nombre de un objeto de directorio. Este objeto de directorio describe la ubicación de acceso de los archivos.

• Como alternativa, es posible definir una variable de entorno, DATA_PUMP_DIR, para especificar el nombre del objeto de directorio en lugar de utilizar el parámetro DIRECTORY. Los clientes de pump de datos buscan esta variable de entorno si no se especifica ningún objeto de directorio de forma explícita.

• Existe un objeto de directorio por defecto creado para cada base de datos. Este objeto de directorio se denomina DATA_PUMP_DIR. El acceso al directorio DATA_PUMP_DIR se otorga automáticamente a los roles EXP_FULL_DATABASE e IMP_FULL_DATABASE.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 227: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-23

Ubicaciones de los Archivos de Pump de Datos (continuación)• No es necesario crear un objeto de directorio manualmente antes de utilizar la exportación

de pump de datos. Existe un objeto de directorio por defecto creado para cada base de datos, independientemente de que se trate de una creación reciente o de una actualización mediante un archivo de comandos en las plataformas UNIX o Windows. Este objeto de directorio se denomina DATA_PUMP_DIR. El acceso al directorio DATA_PUMP_DIR se otorga automáticamente a los roles EXP_FULL_DATABASE e IMP_FULL_DATABASE. El directorio DATA_PUMP_DIR se crea en una de las siguientes ubicaciones:

- <ORACLE_BASE>/admin/DB_UNIQUE_NAME- <ORACLE_HOME>/admin/DB_UNIQUE_NAME

La especificación de la ruta de acceso exacta al directorio para DATA_PUMP_DIR varía en función de las variables de entorno del sistema ORACLE_BASE y ORACLE_HOME y de la existencia del subdirectorio DATA_PUMP_DIR. Si ORACLE_BASE está definido en el sistema de destino, entonces se utiliza ese valor. De lo contrario, se utiliza el valor de ORACLE_HOME. Si, por algún motivo, no se encuentra el subdirectorio DATA_PUMP_DIR, se utiliza la siguiente ruta de acceso por defecto: ORACLE_HOME/rdbms/log.

Nota: En cualquier caso, es necesario disponer de los privilegios de acceso apropiados en relación con el objeto de directorio para la operación que se pretenda llevar a cabo. En el caso de la exportación, necesitará el acceso de escritura para todos los archivos y, en el caso de la importación, necesitará el acceso de lectura para los archivos de volcado, así como el acceso de escritura para los archivos log y los archivos SQL.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 228: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-24

Copyright © 2005, Oracle. Todos los derechos reservados.

Planificación y Ejecución de un Trabajo

Planificación y Ejecución de un TrabajoEnterprise Manager Database Control permite planificar los trabajos de pump de datos (creados mediante este asistente) como trabajos repetibles.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 229: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-25

Copyright © 2005, Oracle. Todos los derechos reservados.

Nomenclatura y Tamaño de los Archivos de Pump de Datos

Nomenclatura y Tamaño de los Archivos de Pump de DatosEl parámetro DUMPFILE especifica los nombres y, si se desea, los directorios de los archivos de volcado del disco. Se pueden proporcionar diversas especificaciones de archivos a modo de lista separada por comas, o bien mediante especificaciones independientes del parámetro DUMPFILE. Los nombres de los archivos pueden contener la variable de sustitución %U, lo que implica que es posible que se generen varios archivos. La variable %U se convierte en los nombres de archivos resultantes en un número entero de dos dígitos y ancho fijo que aumenta de forma monótona a partir de 01. Si no se especifica el parámetro DUMPFILE, se utiliza expdat.dmp por defecto. Los archivos de volcado creados son de extensión automática por defecto.Si se especifica FILESIZE, los archivos tienen el tamaño en bytes definido por FILESIZE y no son de extensión automática. En caso de que sea necesario más espacio de volcado y se haya proporcionado una plantilla con %U, se crea de forma automática un archivo nuevo con el tamaño en bytes definido por FILESIZE; de lo contrario, el cliente recibe un mensaje para agregar un nuevo archivo.Si se especifica una plantilla con %U, el número de archivos creados inicialmente coincidirá con el parámetro PARALLEL.Los archivos existentes cuyos nombres coincidan con los nombres de archivos resultantes no se sobrescriben; generan un error y provocan que se aborte el trabajo.Nota: Si se proporcionan varias plantillas de archivo de volcado, se utilizarán para generar archivos de volcado de forma circular.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 230: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-26

Copyright © 2005, Oracle. Todos los derechos reservados.

Importación de Pump de Datos Objeto de DirectorioSQL*LoaderPump de Datos- Exportación

> - ImportaciónTabla Externa

Importación de Pump de DatosLa utilidad de importación de pump de datos permite cargar un juego de archivos de volcado de exportación en un sistema de destino. El juego de archivos de volcado se compone de uno o más archivos de disco que contienen datos de tabla, metadatos de objetos de base de datos e información de control. Estos archivos están escritos en un formato binario propietario. Durante una operación de importación, la utilidad de importación de pump de datos utiliza estos archivos para localizar cada uno de los objetos de base de datos en el juego de archivos de volcado.Se puede interactuar con la función de importación de pump de datos utilizando una línea de comando, un archivo de parámetros o un modo de comando interactivo:

• Puede utilizar el comando impdp y especificar los parámetros directamente en la línea de comandos.

• Puede introducir los parámetros de la línea de comandos en un archivo (se excluye el parámetro PARFILE porque los archivos de parámetros no se pueden anidar).

• En el modo de comando interactivo, se sigue ejecutando el trabajo actual, pero se para el registro en el terminal y se muestra el prompt de importación. Por ejemplo, puede adjuntar trabajos adicionales a un trabajo que esté en ejecución o que se haya parado.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 231: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-27

Copyright © 2005, Oracle. Todos los derechos reservados.

Importación de Pump de Datos: Transformaciones

Es posible volver a asignar:• Archivos de datos mediante REMAP_DATAFILE• Tablespaces mediante REMAP_TABLESPACE• Esquemas mediante REMAP_SCHEMA

REMAP_DATAFILE = 'C:\oradata\tbs6.f':'/u1/tbs6.f'

Importación de Pump de Datos: TransformacionesYa que los metadatos de objetos se almacenan como XML en el juego de archivos de volcado, resulta fácil aplicar transformaciones cuando se está creando el DDL durante la importación. La importación de pump de datos soporta diversas transformaciones:• REMAP_DATAFILE resulta útil cuando se mueven bases de datos entre plataformas con

semánticas de sistema de archivos distintas.• REMAP_TABLESPACE permite mover objetos de un tablespace a otro.• REMAP_SCHEMA proporciona la anterior capacidad FROMUSER /TOUSER para cambiar la

propiedad de los objetos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 232: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-28

Copyright © 2005, Oracle. Todos los derechos reservados.

Importación de Pump de Datos: Transformaciones

Mediante TRANSFORM, también puede:• Excluir de tablas e índices:

– Las cláusulas STORAGE y TABLESPACE– Sólo la cláusula STORAGE

• Volver a crear identificadores de objetos de tipos de dato abstractos

• Cambiar las asignaciones de extensión y el tamaño de los archivos

TRANSFORM = SEGMENT_ATTRIBUTES|STORAGE|OID|PCTSPACE:{y|n|v}[:object type]

Importación de Pump de Datos: Transformaciones (continuación)El parámetro TRANSFORM permite modificar el DDL de creación de objetos para objetos específicos o para todos los objetos aplicables que se van a cargar. Especifique el parámetro TRANSFORM como se muestra en la diapositiva. Son posibles las siguientes opciones:• SEGMENT_ATTRIBUTES: Si el valor se especifica como Y, se incluyen los atributos de

segmentos (atributos físicos, atributos de almacenamiento, tablespaces y registros).• STORAGE: Si el valor se especifica como Y, se incluyen las cláusulas STORAGE.• OID: Puede utilizar este parámetro para determinar si el identificador de objeto (OID) de

tipos de dato abstractos se vuelve a utilizar o se crea de nuevo. Si el valor está especificado como N, se suprime la cláusula OID de exportación de los tipos de objetos. Resulta útil cuando es necesario duplicar los esquemas en la base de datos mediante exportación e importación, pero no se puede garantizar que los tipos de objetos tengan valores OID idénticos a los de las bases de datos.

• PCTSPACE: Puede utilizar el parámetro PCTSPACE para reducir la cantidad de espacio necesario para tablespaces si realiza una operación de reducción en la asignación de almacenamiento de tablespace. El valor proporcionado para esta transformación debe ser mayor que cero. Representa el multiplicador de porcentaje utilizado para modificar asignaciones de extensiones y el tamaño de los archivos de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 233: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-29

Copyright © 2005, Oracle. Todos los derechos reservados.

Pump de Datos: Consideración del Rendimiento

Maximización del rendimiento con el parámetro PARALLEL.

Ejemplo:

Coordinador maestro

Ejecuciónen paralelo

Archivosgenerados

expdp hr/hr FULL=y

DUMPFILE=dp_dir1:full1%U.dmp, dp_dir2:full2%U.dmp

FILESIZE=2G PARALLEL=3

LOGFILE=dp_dir1:expfull.log JOB_NAME=expfull

Pump de Datos: Consideración del RendimientoPuede mejorar el rendimiento de un trabajo con el parámetro PARALLEL. El valor de paralelismo se aplica mediante el proceso maestro, que asigna el trabajo que se va a ejecutar a los procesos de worker que realizan el procesamiento de los datos y metadatos dentro de una operación. Estos procesos de worker funcionan en paralelo. En general, el grado de paralelismo se debe definir en más del doble del número de CPU en una instancia. Para maximizar el paralelismo, debe proporcionar al menos un archivo para cada grado de paralelismo. Si no hay suficientes archivos de volcado, el rendimiento no será óptimo ya que los distintos threads de ejecución intentarán acceder al mismo archivo de volcado. El grado de paralelismo se puede restablecer en cualquier momento durante un trabajo.En el ejemplo de la diapositiva se muestra la exportación de una base de datos completa. Se exportan todos los datos y metadatos de la base de datos. Se crean archivos de volcado (full101.dmp, full201.dmp, full102.dmp, etc.) con el método de asignación en rueda (Round-Robin) en los directorios a los que hacen referencia los objetos de directorio dp_dir1 y dp_dir2. Para obtener un mejor rendimiento, se debe realizar en canales de E/S independientes. Si es necesario, cada archivo puede tener un tamaño de hasta 2 GB. En principio, se crean hasta tres archivos. Si es necesario, se crearán más archivos. La tabla de trabajo y maestra tienen el mismo nombre: expfull. El archivo log se escribe en expfull.log en el directorio dp_dir1.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 234: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-30

Copyright © 2005, Oracle. Todos los derechos reservados.

Parámetros de Inicialización de Rendimiento

• Los siguientes parámetros afectan al rendimiento de pump de datos:– DISK_ASYNCH_IO=TRUE

– DB_BLOCK_CHECKING=FALSE

– DB_BLOCK_CHECKSUM=FALSE

• Los siguientes parámetros se deben definir en valores altos para permitir el mayor paralelismo posible:– PROCESSES

– SESSIONS

– PARALLEL_MAX_SERVERS

• A los siguientes se les debe asignar un tamaño grande:– SHARED_POOL_SIZE

– UNDO_TABLESPACE

Parámetros de Inicialización de RendimientoPuede utilizar los parámetros (que se muestran en la diapositiva) para mejorar el rendimiento, aunque es posible que el efecto no sea el mismo en todas las plataformas.De forma adicional, se puede asignar un tamaño grande a los parámetros de inicialización SHARED_POOL_SIZE y UNDO_TABLESPACE. Los valores exactos dependerán del tamaño de la base de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 235: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-31

Copyright © 2005, Oracle. Todos los derechos reservados.

Rutas de Acceso de Pump de Datos: Consideraciones

El pump de datos selecciona una de las siguientes rutas de acceso automáticamente:• Ruta de acceso directa• Tablas externas, si los datos incluyen:

– Columnas cifradas– Tablas en cluster– Distintas particiones en el momento de la

carga y descarga y otras circunstancias(consulte las notas)

Tablasexternas

Ruta deaccesodirecta

Base dedatos

Base dedatos

Rutas de Acceso de Pump de Datos: ConsideracionesEl pump de datos selecciona de forma automática el método de acceso más apropiado para cada tabla. El pump de datos utiliza la carga y la descarga de ruta de acceso directa cuando la estructura de una tabla lo permite y cuando se desea un rendimiento máximo de flujo único.El pump de datos utiliza las tablas externas si se cumple cualquiera de las siguientes condiciones:

• Existen tablas con el control de acceso detallado activado en los modos de inserción y selección

• Existe un índice de dominio para una columna LOB• Existen tablas con disparadores activos definidos• Existe un índice global en tablas particionadas con una carga de partición única• Existen tablas de tipo opaco o BFILE• Existe una restricción de integridad referencial• Existen columnas VARRAY con un tipo opaco embebido

Nota: Ya que ambos métodos soportan la misma representación externa de los datos, los datos descargados con un método se pueden cargar mediante el otro método.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 236: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-32

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso de Enterprise Manager para ControlarTrabajos de Pump de Datos

Uso de Enterprise Manager para Controlar Trabajos de Pump de DatosPuede utilizar la interfaz gráfica de usuario (GUI) de Enterprise Manager para controlar todos los trabajos de pump de datos, incluidos aquellos que se han creado mediante las interfaces de línea de comandos expdp o impdp o mediante el paquete DBMS_DATAPUMP.Puede visualizar el estado actual del trabajo y también cambiar el estado a EXECUTE, STOP o SUSPEND.Para acceder a la página Export and Import Jobs, haga clic en el enlace Monitor Export and Import Jobs en la región Move Row Data de la página Maintenance.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 237: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-33

Copyright © 2005, Oracle. Todos los derechos reservados.

Relleno de Tabla Externa

• Descarga de datos a archivos externos mediante el controlador de acceso ORACLE_DATAPUMP

• Sin modificaciones de tablas externas

Archivos externos(formato propietario)

CREATE TABLE … AS SELECT

Tablas

Descarga

Tablas

Carga

INSERT … SELECT

Objeto de DirectorioSQL*LoaderPump de Datos- Exportación- Importación

> Tabla Externa

Relleno de Tabla ExternaUna “tabla externa” está compuesta por archivos planos con formato propietario (es decir, API de ruta de acceso directa) que son independientes del sistema operativo. A medida que se extraen los datos de la base de datos Oracle y se “descargan” en archivos, estos datos se convierten de forma transparente de su representación interna de Oracle a una representación externa nativa de Oracle equivalente (DPAPI). Puede utilizar el comando CREATE TABLE AS SELECT para rellenar una tabla externa. Una vez que se ha creado y rellenado una tabla externa, no se pueden agregar, actualizar o suprimir filas en la tabla externa. Cualquier intento de modificación de los datos de la tabla externa fallará. Puede que la tabla externa no tenga índices.El controlador de acceso de pump de datos permite que se realicen operaciones de carga y de descarga para tablas externas.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 238: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-34

Copyright © 2005, Oracle. Todos los derechos reservados.

Uso de Tablas Externas

• Los datos se pueden utilizar directamente desde el archivo externo o se pueden cargar en otra base de datos.

• Los archivos resultantes se pueden leer sólo mediante el controlador de acceso ORACLE_DATAPUMP.

• Se pueden combinar los archivos generados a partir de orígenes distintos para realizar operaciones de carga.

Desde la base de datos Oracle Desde un archivo externo

Uso de Tablas ExternasLos archivos de datos creados para la tabla externa se pueden mover y utilizar a modo de archivos de datos para otra tabla externa, ya sea en la misma base de datos o en otra. Sólo se pueden leer mediante el controlador de acceso ORACLE_DATAPUMP. Puede elegir si las aplicaciones deben acceder directamente a las tablas externas mediante el comando SELECTo si primero se deben cargar los datos en una base de datos destino. Los archivos de datos rellenados a partir de tablas externas distintas se pueden especificar todos en la cláusula LOCATION de otra tabla externa. Esto proporciona una forma fácil de agregar datos de orígenes diversos. La única restricción es que los metadatos de todas las tablas externas deben ser exactamente los mismos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 239: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-35

Copyright © 2005, Oracle. Todos los derechos reservados.

Relleno de Tabla Externa mediante ORACLE_DATAPUMP

CREATE TABLE emp_ext(first_name, last_name, department_name)

ORGANIZATION EXTERNAL(TYPE ORACLE_DATAPUMPDEFAULT DIRECTORY ext_dirLOCATION ('emp1.exp','emp2.exp','emp3.exp')

)PARALLELASSELECT e.first_name,e.last_name,d.department_nameFROM employees e, departments dWHERE e.department_id = d.department_id AND

d.department_name in('Marketing', 'Purchasing');

Relleno de Tabla Externa mediante ORACLE_DATAPUMPEn este ejemplo se muestra cómo la operación de relleno de tabla externa puede contribuir a exportar un juego seleccionado de registros resultantes de la unión de las tablas EMPLOYEESy DEPARTMENTS. Ya que la tabla externa puede ser extensa, puede utilizar una operación de relleno en paralelo para descargar los datos a una tabla externa. A diferencia de lo que sucede con una consulta en paralelo de una tabla externa, el grado de paralelismo de una operación de relleno en paralelo está limitado por el número de archivos simultáneos en los que pueda escribir el controlador de acceso. Nunca hay más de un servidor de ejecución en paralelo escribiendo en un archivo en un momento concreto.El número de archivos de la cláusula LOCATION debe coincidir con el grado de paralelismo especificado, ya que cada proceso de entrada/salida (E/S) del servidor necesita su propio archivo. Cualquier archivo extra especificado se ignorará. Si no hay suficientes archivos para el grado de paralelismo especificado, éste se reduce para que se ajuste al número de archivos de la cláusula LOCATION. Nota: Para obtener más información sobre los parámetros del controlador de acceso ORACLE_DATAPUMP, consulte la guía Oracle Database Utilities.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 240: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-36

Copyright © 2005, Oracle. Todos los derechos reservados.

Relleno de Tabla Externa mediante ORACLE_LOADER

CREATE TABLE extab_employees

(employee_id NUMBER(4),

first_name VARCHAR2(20),

last_name VARCHAR2(25),

hire_date DATE)

ORGANIZATION EXTERNAL

( TYPE ORACLE_LOADER DEFAULT DIRECTORY extab_dat_dir

ACCESS PARAMETERS

( records delimited by newline

badfile extab_bad_dir:'empxt%a_%p.bad'

logfile extab_log_dir:'empxt%a_%p.log'

fields terminated by ','

missing field values are null

( employee_id, first_name, last_name,

hire_date char date_format date mask "dd-mon-yyyy“))

LOCATION ('empxt1.dat', 'empxt2.dat') )

PARALLEL REJECT LIMIT UNLIMITED;

Relleno de Tabla Externa mediante ORACLE_LOADEREl controlador de acceso ORACLE_LOADER utiliza la sintaxis de SQL*Loader para crear tablas externas.En el ejemplo de la diapositiva se asume que se crean tres objetos de directorio (extab_dat_dir, extab_bad_dir y extab_log_dir) que se asignan a los directorios existentes del sistema operativo al que el usuario tiene acceso.Consejo: Si tiene muchos datos que cargar, active PARALLEL para la operación de carga:

ALTER SESSION ENABLE PARALLEL DML;

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 241: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-37

Copyright © 2005, Oracle. Todos los derechos reservados.

Diccionario de Datos

Visualizar información sobre tablas externas en:• [DBA| ALL| USER]_EXTERNAL_TABLES

• [DBA| ALL| USER]_EXTERNAL_LOCATIONS

• [DBA| ALL| USER]_TABLES y otros

Diccionario de Datos[DBA| ALL| USER]_EXTERNAL_TABLES muestra los atributos específicos de las tablas externas de la base de datos. [DBA| ALL| USER]_EXTERNAL_LOCATIONS muestra los orígenes de datos de las tablas externas. [DBA| ALL| USER]_TABLES describe las tablas relacionales de la base de datos. [DBA| ALL| USER]_TAB_COLUMNS describe las columnas de las tablas, vistas y clusters de la base de datos.

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 242: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-38

Copyright © 2005, Oracle. Todos los derechos reservados.

Resumen

En esta lección, debe haber aprendido lo siguiente:• Describir las formas disponibles para mover datos• Crear y utilizar objetos de directorio• Utilizar SQL*Loader para cargar datos de una base

de datos que no sea Oracle (o archivos de usuario)• Explicar la arquitectura general del pump de datos• Utilizar la exportación e importación de pump de

datos para mover datos entre las bases de datos Oracle

• Utilizar las tablas externas para mover datos a través de archivos independientesde la plataforma

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 243: Taller I DBA-Oracle 2

Base de Datos Oracle 10g: Taller de Administración I 18-39

Copyright © 2005, Oracle. Todos los derechos reservados.

Visión General de la Práctica: Movimiento de Datos

En esta práctica se abordan los siguientes temas:• Uso del asistente de exportación de pump de

datos para seleccionar los objetos de la base de datos que se van a exportar

• Control de un trabajo de exportación de pump de datos

• Uso del asistente de importación de pump de datos para importar tablas a la base de datos

• Uso del asistente de carga de datos para cargar datos a la base de datos

• Carga de datos mediante la línea de comandos

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y

Page 244: Taller I DBA-Oracle 2

Ora

cle

Inte

rnal

& O

racl

e A

cade

my

Use

Onl

y