34
RAQUEL JARAMILLO PALADINES 1 UNIVERSIDAD TECNOLOGIA DE ISRAEL

Tarea1 base de datos

  • Upload
    israel

  • View
    1.221

  • Download
    2

Embed Size (px)

DESCRIPTION

CONTIENE conceptos iniciales de ORACLE

Citation preview

Page 1: Tarea1 base de datos

RAQUEL JARAMILLO PALADINES

1

UNIVERSIDAD TECNOLOGIA DE

ISRAEL

Page 2: Tarea1 base de datos

Particionamiento: Proporciona utilidades para implementaraplicaciones de gran tamaño y escalables. Permite controlar lastablas y los índices con un nivel de granularidad inferior al quesería posible con la versión básica de Enterprise Edition.

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

• Paquetes de Oracle Enterprise Manager: Están creados sobreOracle Enterprise Manager, Complementarios que proporcionana los administradores un juego de herramientas para unagestión de cambios, un ajuste, un control y un diagnósticoavanzados de los entornos de Oracle.

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

2

Page 3: Tarea1 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

3

Page 4: Tarea1 base de datos

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 4

Page 5: Tarea1 base de datos

Es la combinación de los procesos en segundoplano y las estructuras de memoria. Es necesarioiniciar la instancia para acceder a los datos de labase de datos, es un medio de acceso a una basede datos Oracle por la que siempre abre una únicabase de datos, la cual está formada por estructurasde procesos en segundo plano y de memoria, secompone de la estructura de la memoria SGA (ÁreaGlobal del Sistema) y de los procesos en segundoplano que se utilizan para gestionar una base dedatos, La identificación de una instancia se realizamediante los métodos específicos de cada sistemaoperativo, La instancia sólo podrá abrir y utilizaruna base de datos a la vez.

5

Page 6: Tarea1 base de datos

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.6

Page 7: Tarea1 base de datos

Sesiones

Una sesión es una conexión específica de unusuario a Oracle Server. La sesión se iniciacuando Oracle Server valida al usuario, yfinaliza cuando el usuario se desconecta ocuando se produce una terminación anormal.Un usuario de base de datos determinadopuede realizar muchas sesiones simultáneas sidicho usuario se conecta desde distintasherramientas, aplicaciones o terminales almismo tiempo.

7

Page 8: Tarea1 base de datos

Una base de datos Oracle está formada por archivos del sistemaoperativo, también llamados archivos de base de datos, queproporcionan el almacenamiento físico real para la informaciónde la base de datos.

El objetivo general de una base de datos es el de almacenar yrecuperar la información relacionada, tiene una estructura lógicay una física. La estructura física de la base de datos es el juegode 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 basede datos

Los archivos redo log que contienen un registro de los cambiosefectuados en la base.

Los archivos de control que contienen la información necesariapara mantener y verificar la integridad de la base.

8

Page 9: Tarea1 base de datos

Los archivos que no son de base de datos seutilizan para configurar la instancia, autenticar losusuarios con privilegios y recuperar la base dedatos

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

El archivo de contraseñas autentica los usuarioscon privilegios para iniciar y cerrar una instanciaOracle.

Los archivos redo log archivados son copias offlinede los archivos redo log online que pueden sernecesarios para recuperarse de los fallos del mediofísico.

9

Page 10: Tarea1 base de datos

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 aliniciar la instancia y componente fundamentalde una instancia Oracle

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

10

Page 11: Tarea1 base de datos

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 bloqueosinternos, datos estadísticos)

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

– Conjunto Grande

– Conjunto Java

El área SGA también se llama área global compartida. Se utilizapara almacenar información de base de datos que compartenlos procesos de base de datos.

11

Page 12: Tarea1 base de datos

Esta área es dinámica, su tamaño definido por elparámetro SGA_MAX_SIZE, asignada y conseguimiento en gránulos por componentes del SGA

Unidad de Asignación

Un gránulo es una unidad de asignación dememoria virtual contigua. El tamaño de un gránulodepende del tamaño del SGA total estimado cuyocálculo se basa en el valor del parámetroSGA_MAX_SIZE.

• 4 MB si el tamaño del SGA estimado es < 128 MB

• 16 MB, en caso contrario

12

Page 13: Tarea1 base de datos

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.13

Page 14: Tarea1 base de datos

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.14

Page 15: Tarea1 base de datos

En este espacio de memoria se almacena el conjuntode las definiciones utilizadas más recientemente en labase de datos, dentro de ellas incluye informaciónacerca de archivos de base dedatos, tablas, índices, columnas, usuarios, privilegios yotros objetos de base de datos

Especificación del tamaño del diccionario de datos.-El tamaño total depende del tamaño del conjuntocompartido y lo gestiona de forma interna la base dedatos. Si la caché del diccionario de datos esdemasiado pequeña, la base de datos tiene queconsultar las tablas del diccionario de datos repetidasveces para obtener la información que necesita elservidor.

15

Page 16: Tarea1 base 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.

16

Page 17: Tarea1 base de datos

El tamaño de cada buffer de la caché de buffers de basede datos equivale al tamaño de un bloque Oracle, y loespecifica el parámetro DB_BLOCK_SIZE. La caché debuffers de base de datos está formada por dos subcachésindependientes para conjuntos de buffers y para múltiplestamaños de bloque. El parámetro DB_BLOCK_SIZEdetermina el tamaño del bloque primario, que se usa parael tablespace SYSTEM.

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

DB_CACHE_SIZE:

DB_KEEP_CACHE_SIZE:

DB_RECYCLE_CACHE_SIZE:

17

Page 18: Tarea1 base de datos

La función Asesor de Caché de Buffers activa ydesactiva la recopilación de estadísticas parapredecir el comportamiento de los distintostamaños de caché. La información del Asesorde Caché de Buffers se recopila y se muestramediante la vista V$DB_CACHE_ADVICE.

La función Asesor de Caché de Buffers seactiva mediante el parámetro de inicializaciónDB_CACHE_ADVICE, que es un parámetrodinámico y se puede modificar con ALTERSYSTEM

18

Page 19: Tarea1 base de datos

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.

19

Page 20: Tarea1 base de datos

Copia de Seguridad y Recuperación.

RMAN (Oracle Recovery Manager) utiliza el conjunto grande cuando se definen los parámetrosBACKUP_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ámetroLARGE_POOL_SIZE. Este parámetro se puede modificar dinámicamente con el comandoALTER 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 conjuntocompartido, que utiliza una lista LRU.

Conjunto Java

Requisitos de análisis de servicios para comandos Java, es necesario si se instala y se utilizaJava, 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 datosOracle.

20

Page 21: Tarea1 base de datos

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

Área SQL privada: Contiene datos, como información ligada yestructuras 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 liberacuando se cierra el cursor.

Área de tiempo de ejecución: Creada como primer paso de unasolicitud de ejecución.

Para los comandos INSERT, UPDATE y DELETE, esta área selibera una vez ejecutada la sentencia. En el caso de lasconsultas, esta área se libera sólo cuando se han recuperadotodas las filas o se ha cancelado la consulta.

21

Page 22: Tarea1 base de datos

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

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

Procesos de servidor: Son Programas que interactúandirectamente con Oracle Server, que cumplen lasllamadas generadas y devuelven resultados, que puedenser un servidor dedicado o compartido.

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

22

Page 23: Tarea1 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

23

Page 24: Tarea1 base de datos

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

24

Page 25: Tarea1 base de datos

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

25

Page 26: Tarea1 base de datos

Hace una limpieza cuando los procesos han

fallado:

Haciendo un rollback en las transacciones

Liberando los bloqueos

Liberando otros recursos

Reiniciando distribuidores interrumpidos

26

Page 27: Tarea1 base de datos

Responsable de:

Señalar a DBWn en los puntos de control

Actualizar las cabeceras de archivos de datos con informacióndel punto de control

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

Los puntos de control se inician por los siguientes motivos:

Para garantizar que los bloques de datos modificados en lamemoria se escriben en el disco con frecuencia, de forma queno se pierdan en caso de que se produzca el fallo.

Para reducir el tiempo necesario de recuperación de unainstancia. Para la recuperación.

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

27

Page 28: Tarea1 base de datos

Proceso opcional en segundo plano

Archiva automáticamente archivos redo logonline si está definido el modo ARCHIVELOG

Protege el registro contra todos los cambiosrealizados en la base de datos

Archivado de los Archivos Redo LogOnline.-Una de las decisiones importantes quedebe tomar un DBA es si debe configurar labase de datos para que funcione en modoARCHIVELOGo en modo NOARCHIVELOG.

28

Page 29: Tarea1 base de datos

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

Estructura Lógica.

Establece el modo de uso del espacio físico de unabase de datos respetando la Jerarquía formada portablespaces, segmentos, extensiones y bloques.

29

Page 30: Tarea1 base de datos

Existe la siguiente jerarquía de estructuraslógicas:

Una base de datos Oracle contiene comomínimo un tablespace.

Un tablespace contiene uno o más segmentos.

Cada segmento está formado por extensiones.

Una extensión está formada por bloqueslógicos.

Un bloque es la unidad más pequeña para lasoperaciones de lectura y escritura.

30

Page 31: Tarea1 base de datos

• 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.

31

Page 32: Tarea1 base de datos

Segmentos

Un segmento es el espacio asignado a una estructura dealmacenamiento lógica específica dentro de un tablespace, puedeestar formado por uno o más segmentos. Un segmento no puedeabarcar tablespaces; sin embargo, un segmento puede abarcarmúltiples archivos de datos que pertenezcan al mismotablespace, cada segmento está formado por una o más extensiones.

Extensiones

El espacio se asigna a un segmento mediante extensiones. Una omás extensiones componen un segmento, cuando se crea unsegmento, éste está formado, como mínimo, por una extensión, amedida que el segmento va creciendo, se le agregan extensiones, esun juego de bloques Oracle contiguos, no puede abarcar archivos dedatos y, por tanto, debe existir en un archivo de datos.

El DBA puede agregar extensiones a un segmento manualmente.

32

Page 33: Tarea1 base de datos

Oracle Server gestiona el espacio de almacenamientode los archivos de datos en unidades llamadas bloquesOracle o bloques de datos. Con el mayor nivel degranularidad posible, los datos de una base de datosOracle se almacenan en bloques de datos, los bloquesde datos Oracle son las unidades de almacenamientomás pequeñas que Oracle Server puede asignar, leer oescribir.

Un bloque de datos se corresponde con uno o másbloques del sistema operativo asignados desde unarchivo de datos existente. El tamaño de bloque dedatos estándar de cada base de datos Oracle loespecifica el parámetro de inicializaciónDB_BLOCK_SIZE cuando se crea la base de datos. Eltamaño del bloque de datos debería ser múltiplo deltamaño del bloque del sistema operativo para evitaroperaciones de E/S innecesarias.

33

Page 34: Tarea1 base de datos

34