Tarea1 base de datos raquel jaramillo

34
ORACLE Base de datos de objetos relacionales escalable y fácil de gestionar. RAQUEL JARAMILLO PALADINES 1 UNIVERSIDAD TECNOLOGIA DE ISRAEL

Transcript of Tarea1 base de datos raquel jaramillo

Page 1: Tarea1 base de datos raquel jaramillo

1

ORACLE

Base de datos de objetos relacionales escalable y fácil de gestionar.

RAQUEL JARAMILLO PALADINES

UNIVERSIDAD TECNOLOGIA DE ISRAEL

Page 2: Tarea1 base de datos raquel jaramillo

2

OPCIONES

Particionamiento: Proporciona utilidades para implementar aplicaciones de gran tamaño y escalables. Permite controlar las tablas y los índices con un nivel de granularidad inferior al que sería posible con la versión básica de Enterprise Edition.

• Real Application Clusters: Mejora la escalabilidad y disponibilidad de una base de datos.

• Paquetes de Oracle Enterprise Manager: Están creados sobre Oracle Enterprise Manager, Complementarios que proporcionan a los administradores un juego de herramientas para una gestión de cambios, un ajuste, un control y un diagnóstico avanzados de los entornos de Oracle.

• Seguridad avanzada: Proporciona seguridad de red de servidor a servidor y de cliente a servidor mediante el cifrado y la comprobación de la integridad de datos.

Page 3: Tarea1 base de datos raquel jaramillo

3

TAREAS DEL ADMINISTRADOR DE LA BASE DE DATOS

Planificar y crear bases de datos Gestionar la disponibilidad de la base de datos Gestionar las estructuras físicas y lógicas Gestionar el almacenamiento basándose en

el diseño Gestionar la seguridad Administración de la red Copia de seguridad y recuperación Ajuste de la base de datos

Page 4: Tarea1 base de datos raquel jaramillo

4

VISIÓN GENERAL DE LOS COMPONENTES PRINCIPALES

Oracle Server: Es un sistema de gestión de bases de datos que proporciona un enfoque abierto, global e integrado de la gestión de información que se encuentra formado por una instancia Oracle y una base de datos Oracle

Oracle Server debe gestionar grandes cantidades de datos en un entorno para varios usuarios de forma fiable, de modo que muchos usuarios puedan acceder de forma simultánea a los mismos datos. Al mismo tiempo, es necesario que el rendimiento obtenido sea excelente. Oracle Server también debe impedir el acceso no autorizado y proporcionar soluciones eficaces para la recuperación en caso de fallo

Page 5: Tarea1 base de datos raquel jaramillo

5

INSTANCIA ORACLE

Es la combinación de los procesos en segundo plano y las estructuras de memoria. Es necesario iniciar la instancia para acceder a los datos de la base de datos, es un medio de acceso a una base de datos Oracle por la que siempre abre una única base de datos, la cual está formada por estructuras de procesos en segundo plano y de memoria, se compone de la estructura de la memoria SGA (Área Global del Sistema) y de los procesos en segundo plano que se utilizan para gestionar una base de datos, La identificación de una instancia se realiza mediante los métodos específicos de cada sistema operativo, La instancia sólo podrá abrir y utilizar una base de datos a la vez.

Page 6: Tarea1 base de datos raquel jaramillo

6

ESTABLECIMIENTO DE UNA CONEXIÓN Y CREACIÓN DE UNA SESIÓN

El usuario inicia una herramienta como SQL*Plus, o bien ejecuta una aplicación que se haya desarrollado con una herramienta como Oracle Forms. En la configuración más básica, cuando un usuario se conecta a Oracle Server, se crea un proceso en el equipo que ejecuta Oracle Server. A este proceso se le llama proceso de servidor.

Conexión.- No es más que una ruta de comunicación entre un proceso de usuario y Oracle Server. Se puede conectar tres formas:

El usuario se conecta al sistema operativo ejecutando la instancia Oracle e inicia una aplicación o herramienta que accede a la base de datos en ese sistema.

El usuario inicia la aplicación o la herramienta en un equipo local y se conecta a través de la red al equipo que ejecuta la instancia Oracle.

En una conexión de tres capas, el equipo del usuario se comunica a través de la red con un servidor de aplicaciones o de red, que se conecta a través de una red a la máquina que ejecuta la instancia Oracle.

Page 7: Tarea1 base de datos raquel jaramillo

7

ESTABLECIMIENTO DE UNA CONEXIÓN Y CREACIÓN DE UNA SESIÓN

Sesiones Una sesión es una conexión específica de un

usuario a Oracle Server. La sesión se inicia cuando Oracle Server valida al usuario, y finaliza cuando el usuario se desconecta o cuando se produce una terminación anormal. Un usuario de base de datos determinado puede realizar muchas sesiones simultáneas si dicho usuario se conecta desde distintas herramientas, aplicaciones o terminales al mismo tiempo.

Page 8: Tarea1 base de datos raquel jaramillo

8

BASE DE DATOS ORACLE

Una base de datos Oracle está formada por archivos del sistema operativo, también llamados archivos de base de datos, que proporcionan el almacenamiento físico real para la información de la base de datos.

El objetivo general de una base de datos es el de almacenar y recuperar la información relacionada, tiene una estructura lógica y una física. La estructura física de la base de datos es el juego de archivos del sistema operativo en la base de datos.

Consta de tres tipos de archivos. Los archivos de datos que contienen los datos reales de la base de

datos Los archivos redo log que contienen un registro de los cambios

efectuados en la base. Los archivos de control que contienen la información necesaria para

mantener y verificar la integridad de la base.

Page 9: Tarea1 base de datos raquel jaramillo

9

OTROS ARCHIVOS CLAVE

Los archivos que no son de base de datos se utilizan para configurar la instancia, autenticar los usuarios con privilegios y recuperar la base de datos

El archivo de parámetros define las características de una instancia Oracle.

El archivo de contraseñas autentica los usuarios con privilegios para iniciar y cerrar una instancia Oracle.

Los archivos redo log archivados son copias offline de los archivos redo log online que pueden ser necesarios para recuperarse de los fallos del medio físico.

Page 10: Tarea1 base de datos raquel jaramillo

10

ESTRUCTURA FÍSICA Y DE LA MEMORIA

La estructura física incluye tres tipos de archivos: Archivos de control Archivos de datos Archivos redo log online

La estructura de la memoria de Oracle está formada por dos áreas de memoria llamadas:

SGA (Área Global del Sistema): Asignada al iniciar la instancia y componente fundamental de una instancia Oracle

PGA (Área Global de Programas): Asignada al iniciar el proceso de servidor

Page 11: Tarea1 base de datos raquel jaramillo

11

ÁREA GLOBAL DEL SISTEMA

El área SGA está formada por varias estructuras de la memoria:

– Conjunto Compartido

– Caché de Buffers de Base de Datos

– Buffer de Redo Log

– Otras estructuras (por ejemplo, gestión de bloqueos y bloqueos internos, datos estadísticos)

Existen dos estructuras de la memoria adicionales que se pueden configurar desde el SGA:

– Conjunto Grande

– Conjunto Java

El área SGA también se llama área global compartida. Se utiliza para almacenar información de base de datos que comparten los procesos de base de datos.

Page 12: Tarea1 base de datos raquel jaramillo

12

ÁREA GLOBAL DEL SISTEMA

Esta área es dinámica, su tamaño definido por el parámetro SGA_MAX_SIZE, asignada y con seguimiento en gránulos por componentes del SGA

Unidad de Asignación Un gránulo es una unidad de asignación de

memoria virtual contigua. El tamaño de un gránulo depende del tamaño del SGA total estimado cuyo cálculo se basa en el valor del parámetro SGA_MAX_SIZE.

• 4 MB si el tamaño del SGA estimado es < 128 MB • 16 MB, en caso contrario

Page 13: Tarea1 base de datos raquel jaramillo

13

SHARED POOL - CONJUNTO COMPARTIDO

Se utiliza para almacenar: – Las últimas sentencias SQL ejecutadas – Las últimas definiciones de datos utilizadas

Se encuentra formado por dos estructuras de memoria clave relacionadas con el rendimiento:

– Caché de Biblioteca

– Caché del Diccionario de Datos

Y su Tamaño está definido por el parámetro SHARED_POOL_SIZE. El entorno de conjunto compartido contiene estructuras tanto fijas como variables. Las estructuras fijas mantienen relativamente el mismo tamaño, mientras que las estructuras variables aumentan y disminuyen en función de los requisitos del usuario y del programa.

Page 14: Tarea1 base de datos raquel jaramillo

14

ESPECIFICACIÓN DEL TAMAÑO DEL CONJUNTO COMPARTIDO Y LIBRARY CACHE - DE BIBLIOTECA

Conjunto Compartido.-se utiliza para objetos que se pueden compartir de forma global, como planes de ejecución SQL reutilizables, paquetes PL/SQL, procedimientos, funciones e información de cursor, su tamaño se debe ajustar a las necesidades tanto de las áreas fijas como variables

Library cache - Caché de Biblioteca.- Permite almacenar información acerca de las sentencias SQL y PL/SQL utilizadas más recientemente, también permite compartir las sentencias utilizadas con mayor frecuencia, esto se lo realiza por medio de un algoritmo LRU. Está formado por dos estructuras:

– Área de SQL compartido

– Área de PL/SQL compartido La caché de biblioteca está formada por dos estructuras: SQL compartido: Almacena y comparte el plan de ejecución y el árbol de análisis para las

sentencias SQL que se ejecutan en la base de datos. La segunda vez que se ejecuta una sentencia SQL idéntica, ésta se puede beneficiar de la información de análisis disponible en el SQL compartido para acelerar la ejecución. Para garantizar que las sentencias SQL utilizan un área SQL compartida siempre que sea posible, el texto, el esquema y las variables ligadas deben ser idénticos.

PL/SQL compartido: Almacena y comparte las sentencias PL/SQL ejecutadas más recientemente.

Page 15: Tarea1 base de datos raquel jaramillo

15

DATA DICCIONARY CACHE - CACHÉ DEL DICCIONARIO DE DATOS Y ESPECIFICACIÓN DEL TAMAÑO DEL DICCIONARIO DE DATOS

En este espacio de memoria se almacena el conjunto de las definiciones utilizadas más recientemente en la base de datos, dentro de ellas incluye información acerca de archivos de base de datos, tablas, índices, columnas, usuarios, privilegios y otros objetos de base de datos

Especificación del tamaño del diccionario de datos .-El tamaño total depende del tamaño del conjunto compartido y lo gestiona de forma interna la base de datos. Si la caché del diccionario de datos es demasiado pequeña, la base de datos tiene que consultar las tablas del diccionario de datos repetidas veces para obtener la información que necesita el servidor.

Page 16: Tarea1 base de datos raquel jaramillo

16

ESPECIFICACIÓN DEL TAMAÑO DEL DICCIONARIO DE DATOS

En este espacio de memoria se almacena copias de bloques de datos que se han recuperado de archivos de datos lo que permite grandes mejoras de rendimiento al obtener y actualizar datos, Cuando se procesa una consulta, el proceso de Oracle Server busca en la caché de buffers de base de datos los bloques que necesita. Si no se encuentra el bloque en la caché de buffers de base de datos, el proceso del servidor lee el bloque desde el archivo de datos y coloca una copia en la caché de buffers de base de datos.

Page 17: Tarea1 base de datos raquel jaramillo

17

ESPECIFICACIÓN DEL TAMAÑO DE LA CACHÉ DE BUFFERS DE BASE DE DATOS.-

El tamaño de cada buffer de la caché de buffers de base de datos equivale al tamaño de un bloque Oracle, y lo especifica el parámetro DB_BLOCK_SIZE. La caché de buffers de base de datos está formada por dos subcachés independientes para conjuntos de buffers y para múltiples tamaños de bloque. El parámetro DB_BLOCK_SIZE determina el tamaño del bloque primario, que se usa para el tablespace SYSTEM.

Hay tres parámetros que definen los tamaños de las cachés de buffers de base de datos:

DB_CACHE_SIZE: DB_KEEP_CACHE_SIZE: DB_RECYCLE_CACHE_SIZE:

Page 18: Tarea1 base de datos raquel jaramillo

18

ASESOR DE CACHÉ DE BUFFERS

La función Asesor de Caché de Buffers activa y desactiva la recopilación de estadísticas para predecir el comportamiento de los distintos tamaños de caché. La información del Asesor de Caché de Buffers se recopila y se muestra mediante la vista V$DB_CACHE_ADVICE.

La función Asesor de Caché de Buffers se activa mediante el parámetro de inicialización DB_CACHE_ADVICE, que es un parámetro dinámico y se puede modificar con ALTER SYSTEM

Page 19: Tarea1 base de datos raquel jaramillo

19

ESPECIFICACIÓN DEL TAMAÑO DEL BUFFER DE REDO LOG

El tamaño del buffer de redo log está definido por el parámetro de inicialización LOG_BUFFER.

Large pool - Conjunto Grande

Es un área opcional de memoria en el SGA que permite liberar al conjunto compartido de su carga, se utiliza para:

– Memoria de sesión (UGA) para el servidor compartido

– Procesos de servidor de E/S

– Operaciones de copia de seguridad y recuperación o RMAN

– Buffers de mensajes de ejecución en paralelo: PARALLEL_AUTOMATIC_TUNING se define como TRUE

El tamaño se lo define por LARGE_POOL_SIZE y se puede cambiar de tamaño de forma dinámica.

Mediante la asignación de memoria de sesión desde el conjunto grande para el servidor compartido, Oracle XA o los buffers de consulta paralela, Oracle puede utilizar el conjunto compartido principalmente para almacenar sentencias de SQL compartido en caché. De este modo, libera de su carga otras áreas del conjunto compartido.

Page 20: Tarea1 base de datos raquel jaramillo

20

ESPECIFICACIÓN DEL TAMAÑO DEL BUFFER DE REDO LOG

Copia de Seguridad y Recuperación.

RMAN (Oracle Recovery Manager) utiliza el conjunto grande cuando se definen los parámetros BACKUP_DISK_IO=n y BACKUP_TAPE_IO_SLAVE= TRUE.

Ejecución en Paralelo.

Si el parámetro PARALLEL_AUTOMATIC_TUNING se define en TRUE, se utiliza el conjunto grande.

Especificación del Tamaño del Conjunto Grande.

El tamaño del conjunto grande se especifica en bytes definidos por el parámetro LARGE_POOL_SIZE. Este parámetro se puede modificar dinámicamente con el comando ALTER SYSTEM SET.

SQL> ALTER SYSTEM SET LARGE_POOL_SIZE=24MB

El Conjunto Grande y las Listas LRU

El conjunto grande no tiene una lista LRU. Es distinto al espacio reservado del conjunto compartido, que utiliza una lista LRU.

Conjunto Java

Requisitos de análisis de servicios para comandos Java, es necesario si se instala y se utiliza Java, su tamaño está definido por el parámetro JAVA_POOL_SIZE.

Área Global de Programas

Esta memoria está reservada para cada proceso de usuario que se conecte a una base de datos Oracle.

Page 21: Tarea1 base de datos raquel jaramillo

21

CONTENIDO DEL PGA

El contenido de la memoria PGA varía en función de si la instancia se ejecuta en una configuración de servidor dedicado o de servidor compartido. Por regla general, la memoria PGA incluye los siguientes componentes:

Área SQL privada: Contiene datos, como información ligada y estructuras de memoria de tiempo de ejecución.

El área SQL privada de un cursor se divide en dos áreas: Área persistente: Contiene información ligada y sólo se libera cuando

se cierra el cursor. Área de tiempo de ejecución: Creada como primer paso de una

solicitud de ejecución. Para los comandos INSERT, UPDATE y DELETE, esta área se libera

una vez ejecutada la sentencia. En el caso de las consultas, esta área se libera sólo cuando se han recuperado todas las filas o se ha cancelado la consulta.

Page 22: Tarea1 base de datos raquel jaramillo

22

ESTRUCTURA DE PROCESOS

El contenido de la memoria PGA varía en función de si la instancia se ejecuta en una configuración de servidor dedicado o de servidor compartido. oracle se beneficia de varios tipos de procesos:

Procesos de usuario: Programa que solicita interacción con Oracle Server, donde se debe establecer primero una conexión y que no interactúa directamente con Oracle Server

Procesos de servidor: Son Programas que interactúan directamente con Oracle Server, que cumplen las llamadas generadas y devuelven resultados, que pueden ser un servidor dedicado o compartido.

Procesos en segundo plano: Mantienen y fuerzan las relaciones entre las estructuras físicas y de memoria:

Page 23: Tarea1 base de datos raquel jaramillo

23

DBWN (ESCRITOR DE BASE DE DATOS)

DBWn escribe así: Se produce un punto de control Los buffers sucios alcanzan el umbral No hay ningún buffer libre Se produce un timeout Se realiza un solicitud de sondeo RAC Tablespace OFFLINE Tablespace READ ONLY Tabla DROP o TRUNCATE Tablespace BEGIN BACKUP

Page 24: Tarea1 base de datos raquel jaramillo

24

LGWR (ESCRITURA DE LOGS)

LGWR escribe: En la validación Si se llena a un tercio de su capacidad Si hay 1 MB de redo Cada tres segundos Antes de que escriba DBWn

Page 25: Tarea1 base de datos raquel jaramillo

25

SMON (MONITOR DEL SISTEMA)

Responsabilidades: Recuperación de instancias

› Aplica los cambios pendientes en los archivos redo log online.

› Abre la base de datos para que acceda el usuario.

› Deshace las transacciones no validadas. Fusiona el espacio libre Libera los segmentos temporales

Page 26: Tarea1 base de datos raquel jaramillo

26

PMON (MONITOR DE PROCESOS)

Hace una limpieza cuando los procesos han fallado:

Haciendo un rollback en las transacciones Liberando los bloqueos Liberando otros recursos Reiniciando distribuidores interrumpidos

Page 27: Tarea1 base de datos raquel jaramillo

27

CKPT (PUNTO DE CONTROL)

Responsable de: Señalar a DBWn en los puntos de control Actualizar las cabeceras de archivos de datos con información del

punto de control Actualizar los archivos de control con información del punto de

control

Los puntos de control se inician por los siguientes motivos: Para garantizar que los bloques de datos modificados en la

memoria se escriben en el disco con frecuencia, de forma que no se pierdan en caso de que se produzca el fallo.

Para reducir el tiempo necesario de recuperación de una instancia. Para la recuperación.

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

Page 28: Tarea1 base de datos raquel jaramillo

28

ARCN (ARCHIVER) Y ARCHIVADO DE LOS ARCHIVOS REDO LOG ONLINE

Proceso opcional en segundo plano Archiva automáticamente archivos redo log

online si está definido el modo ARCHIVELOG Protege el registro contra todos los cambios

realizados en la base de datos Archivado de los Archivos Redo Log

Online.-Una de las decisiones importantes que debe tomar un DBA es si debe configurar la base de datos para que funcione en modo ARCHIVELOGo en modo NOARCHIVELOG.

Page 29: Tarea1 base de datos raquel jaramillo

29

Archivado de Archivos Redo Log Online Y Estructura Lógica.

Modo ARCHIVELOG: En caso de que la base de datos se configure para que se ejecute en modo ARCHIVELOG, será necesario archivar los grupos inactivos de archivos redo log online llenos antes de que se puedan volver a utilizar de nuevo. Normalmente, se suele configurar una base de datos de producción para que se ejecute en modo ARCHIVELOG.

Estructura Lógica. Establece el modo de uso del espacio físico de una

base de datos respetando la Jerarquía formada por tablespaces, segmentos, extensiones y bloques.

Page 30: Tarea1 base de datos raquel jaramillo

30

ESTRUCTURA LÓGICA.

Existe la siguiente jerarquía de estructuras lógicas: Una base de datos Oracle contiene como mínimo

un tablespace. Un tablespace contiene uno o más segmentos. Cada segmento está formado por extensiones. Una extensión está formada por bloques lógicos. Un bloque es la unidad más pequeña para las

operaciones de lectura y escritura.

Page 31: Tarea1 base de datos raquel jaramillo

31

TABLESPACES Y ARCHIVOS DE DATOS (ESTRUCTURA NO LÓGICA):

• Una base de datos Oracle se puede agrupar de forma lógica en áreas lógicas más pequeñas de espacio conocidas como tablespaces. Un tablespace sólo puede pertenecer a una base de datos a la vez, está formado por uno o más archivos del sistema operativo, que reciben el nombre de archivos de datos, puede tener uno o más segmentos, se pueden poner en línea mientras se está ejecutando la base de datos, pueden cambiar entre un estado de lectura y escritura y de sólo lectura.

Excepto en el caso del tablespace SYSTEMo un tablespace con un segmento de deshacer activo, los tablespaces se pueden poner offline y dejar que la base de datos se siga ejecutando.

Archivos de Datos(Estructura No Lógica): Cada tablespace de una base de datos Oracle está formado por uno o más archivos llamados archivos de datos. Se trata de estructuras físicas que se ajustan al sistema operativo en el que se ejecuta Oracle Server, un archivo de datos sólo puede pertenecer a un tablespace.

Page 32: Tarea1 base de datos raquel jaramillo

32

TABLESPACES Y ARCHIVOS DE DATOS (ESTRUCTURA NO LÓGICA):

Segmentos Un segmento es el espacio asignado a una estructura de

almacenamiento lógica específica dentro de un tablespace, puede estar formado por uno o más segmentos. Un segmento no puede abarcar tablespaces; sin embargo, un segmento puede abarcar múltiples archivos de datos que pertenezcan al mismo tablespace, cada segmento está formado por una o más extensiones.

Extensiones El espacio se asigna a un segmento mediante extensiones. Una o más

extensiones componen un segmento, cuando se crea un segmento, éste está formado, como mínimo, por una extensión, a medida que el segmento va creciendo, se le agregan extensiones, es un juego de bloques Oracle contiguos, no puede abarcar archivos de datos y, por tanto, debe existir en un archivo de datos.

El DBA puede agregar extensiones a un segmento manualmente.

Page 33: Tarea1 base de datos raquel jaramillo

33

BLOQUES DE DATOS

Oracle Server gestiona el espacio de almacenamiento de los archivos de datos en unidades llamadas bloques Oracle o bloques de datos. Con el mayor nivel de granularidad posible, los datos de una base de datos Oracle se almacenan en bloques de datos, los bloques de datos Oracle son las unidades de almacenamiento más pequeñas que Oracle Server puede asignar, leer o escribir.

Un bloque de datos se corresponde con uno o más bloques del sistema operativo asignados desde un archivo de datos existente. El tamaño de bloque de datos estándar de cada base de datos Oracle lo especifica el parámetro de inicialización DB_BLOCK_SIZE cuando se crea la base de datos. El tamaño del bloque de datos debería ser múltiplo del tamaño del bloque del sistema operativo para evitar operaciones de E/S innecesarias.

Page 34: Tarea1 base de datos raquel jaramillo

34