34
UNIVERSIDAD DE ISRAEL FACULTAD DE INGENIERIA EN SISTEMAS ADMINISTRACION DE BASE DE DATOS TAREA NRO. 1 ALUMNO: CÉSAR ORLANDO ORTIZ GUAYLLAS MÓDULO: NOVENO

Tarea1Cesar Ortiz

Embed Size (px)

DESCRIPTION

Administrador de Base de Datos Oracle

Citation preview

Page 1: Tarea1Cesar Ortiz

UNIVERSIDAD DE ISRAELFACULTAD DE INGENIERIA EN

SISTEMASADMINISTRACION DE BASE DE

DATOS

TAREA NRO. 1

ALUMNO: CÉSAR ORLANDO ORTIZ GUAYLLAS

MÓDULO: NOVENO

Page 2: Tarea1Cesar Ortiz

ADMINISTRACIÓN DE BASE DE DATOS

Arquitectura BD

Page 3: Tarea1Cesar Ortiz

INTRODUCCIONOracle es una base de datos de objetos relacionales escalable y fácil

de gestionar. Las siguientes opciones proporcionan una funcionalidad adicional.

• 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, ya que permite que múltiples instancias del software de Oracle accedan a una única base de datos.

• Paquetes de Oracle Enterprise Manager: Están creados sobre Oracle Enterprise Manager. Los paquetes de Oracle Enterprise Manager Diagnostics, Tuning y Change Management son programas 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, y soporta servicios de autenticación de usuario mejorados con servicios de seguridad de terceros.

Page 4: Tarea1Cesar Ortiz

Tareas del Administrador de la Base de Datos

Los administradores de bases de datos son los responsables de mantener Oracle Server con el fin de que pueda procesar las solicitudes de usuario.Entre las actividades principales que un DBA tiene a cargo están:

• 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 5: Tarea1Cesar Ortiz

Visión General de los Componentes Principales

Page 6: Tarea1Cesar Ortiz

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 es la clave para la gestión de la información. Por regla general, 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.

Page 7: Tarea1Cesar Ortiz

Instancia Oracle

Una instancia Oracle 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

Una instancia Oracle 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 8: Tarea1Cesar Ortiz

Establecimiento de una Conexión y Creación de una Sesión

Para que los usuarios puedan ejecutar sentencias SQL en una base de datos Oracle, se deben conectar a una instancia.

• El usuario inicia una herramienta como SQL*Plus, o bien ejecuta una aplicación que se haya desarrollado con una herramienta como Oracle Forms. Esta aplicación o herramienta se ejecuta como un proceso de usuario.

• 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. El proceso de servidor se comunicará con la instancia Oracle en nombre del proceso de usuario en el cliente. El proceso de servidor ejecuta las sentencias SQL en nombre del usuario.

Page 9: Tarea1Cesar Ortiz

ConexiónUna conexión no es más que una ruta de comunicación entre un proceso de usuario y Oracle Server. Un usuario de base de datos se puede conectar a Oracle Server de 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. Se establece la ruta de comunicación mediante los mecanismos de comunicación entre procesos disponibles en el sistema operativo del host.

- 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 esta configuración, conocida como cliente-servidor, el software de red se utiliza para establecer la comunicación entre el usuario y Oracle Server.

- 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. Por ejemplo, el usuario ejecuta un explorador en un equipo de red para utilizar una aplicación que reside en un servidor NT, que recupera los datos de una base de datos Oracle que se ejecuta en un host UNIX.

Page 10: Tarea1Cesar Ortiz

SesionesUna 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. Excepto en el caso de algunas herramientas de administración de base de datos especializadas, el inicio de una sesión de base de datos requiere que Oracle Server esté disponible.Base de Datos Oracle

Page 11: Tarea1Cesar Ortiz

Una base de datos Oracle 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 de datos para activar la recuperación de los datos en caso de fallos

• Los archivos de control que contienen la información necesaria para mantener y verificar la integridad de la base de datosOtras Estructuras de Archivos Clave

Oracle Server también utiliza otros archivos que no forman parte de la base de datos:• El archivo de parámetros define las características de una instancia Oracle. Por ejemplo, contiene los parámetros que especifican el tamaño de las estructuras de la memoria en el SGA.

• 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 12: Tarea1Cesar Ortiz

Estructura Física

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

Estructura de la memoriaLa 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Área Global del SistemaEl á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

Page 13: Tarea1Cesar Ortiz

SGA DinámicaA partir de Oracle9i, el área SGA dinámica implementa una infraestructura que permite modificar la configuración del SGA sin cerrar la instancia. Asimismo, esto permite modificar el tamaño de la caché de buffers de base de datos, del conjunto compartido y del conjunto grande sin cerrar la instancia.

Especificación del Tamaño del SGA

El tamaño del área SGA lo determinan varios parámetros de inicialización. Los parámetros que afectan al tamaño del área SGA en mayor medida son:

DB_CACHE_SIZE: Tamaño de la caché de bloques estándar. El valor por defecto es de 48 MB para UNIX y 52 MB para NT.

LOG_BUFFER: Número de bytes asignados al buffer de redo log

SHARED_POOL_SIZE: Tamaño en bytes del área dedicada a SQL compartido y a PL/SQL. El valor por defecto es 16 MB. Si se trata de 64 bits, el tamaño por defecto es de 64 MB.

LARGE_POOL_SIZE: Tamaño del conjunto grande. El valor por defecto es cero (excepto si el parámetro PARALLEL_AUTOMATIC_TUNING de init.ora se define en TRUE, en cuyo caso se calcula automáticamente el valor por defecto.)

JAVA_POOL_SIZE: Tamaño del conjunto Java. El valor por defecto es 24 MB. Por lo tanto, el tamaño del área SGA no puede superar el especificado en SGA_MAX_SIZE menos los valores de DB_CACHE_SIZE, LOG_BUFFER, SHARED_POOL_SIZE, LARGE_POOL_SIZE y JAVA_POOL_SIZE.

Page 14: Tarea1Cesar Ortiz

Área Global del SistemaEsta á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ónUn 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 contrarioShared pool - Conjunto compartido

Page 15: Tarea1Cesar Ortiz

Library cache - Caché de BibliotecaPermite 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 (utilizado menos recientemente)

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. Los procedimientos (funciones, paquetes y disparadores) y las unidades de programa analizados y compilados se almacenan en esta área.

Page 16: Tarea1Cesar Ortiz

Data Diccionary cache - Caché del Diccionario de DatosEn 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. Durante la fase de análisis, el proceso de servidor busca la información en el diccionario de datos para resolver los nombres de objeto y validar el acceso con esto se logra que el almacenamiento de la información del diccionario de datos en caché mejore los tiempos de respuesta de las consultas.Especificación del Tamaño del Diccionario de DatosEl 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. Estas consultas se denominan llamadas recursivas y son más lentas que las consultas directas de la caché del diccionario de datos, puesto que las consultas directas no utilizan SQL.Database buffer cache - Caché de Buffers de 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, esto lo realiza gestionado un algoritmo LRU, el tamaño del bloque primario está determinado por DB_BLOCK_SIZE.

Page 17: Tarea1Cesar Ortiz

Especificación del Tamaño de la Caché de Buffers de Base de DatosEl 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.Hay tres parámetros que definen los tamaños de las cachés de buffers de base de datos:

– DB_CACHE_SIZE: Sólo especifica el tamaño de la caché de buffers por defecto; siempre está presente y no se puede definir en cero

– DB_KEEP_CACHE_SIZE: Establece el tamaño de la caché de buffers KEEP, que se utiliza para retener en memoria bloques que probablemente se van a reutilizar

– DB_RECYCLE_CACHE_SIZE: Determina el tamaño de la caché de buffers de reciclado, que se utiliza para eliminar de la memoria bloques que probablemente no se van a reutilizarAsesor de Caché de BuffersLa 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é.

Page 18: Tarea1Cesar Ortiz

Valores del Parámetro DB_CACHE_ADVICE

– OFF: El asesor está desactivado y no se le asigna memoria.

– ON: El asesor está activado y se produce una sobrecarga tanto de CPU como de memoria. Si se intenta definir el parámetro en el estado ON cuando tiene el valor OFF, puede dar lugar al siguiente error: ORA-4031 Inability to allocate from the Shared Pool when the parameter is switched to ON. Si el parámetro se encuentra en estado READY, se puede definir como ON sin errores, porque la memoria ya está asignada.

– READY: El asesor está desactivado pero la memoria continúa asignada. Al asignar la memoria antes de activar el asesor, se evita el riesgo de que se produzca el error ORA-4031. Si se activa el estado de este parámetro cuando está en OFF, es posible que se produzca el error ORA-4031.Redo log buffer - Buffer de Redo LogEn este espacio se registra todos los cambios realizados en los bloques de datos de la base de datos, su finalidad principal es la recuperación, los cambios registrados dentro de éste se llaman registros de redo, los registros de redo contienen información que permite reconstruir o rehacer cambios, el tamaño está definido por LOG_BUFFER

Page 19: Tarea1Cesar Ortiz

El buffer de redo log es un buffer circular que contiene los cambios realizados en los bloques de archivos de datos. Esta información se almacena en registros de redo. Los registros de redo contienen la información necesaria para recrear los datos que había antes de los cambios realizados por las operaciones INSERT, UPDATE, DELETE, CREATE, ALTER o DROP.Especificación del Tamaño del Buffer de Redo LogEl tamaño del buffer de redo log está definido por el parámetro de inicialización LOG_BUFFER.

Large pool - Conjunto Grande

Page 20: Tarea1Cesar Ortiz

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.

Large pool - Conjunto Grande

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. Si se ha configurado el conjunto grande, pero no tiene el tamaño suficiente, fallará la asignación de la memoria del conjunto grande. RMAN escribe un mensaje de error en el archivo log de alertas y no utiliza esclavos de E/S para copias de seguridad o restauración.

Page 21: Tarea1Cesar Ortiz

Ejecución en Paralelo.

Si el parámetro PARALLEL_AUTOMATIC_TUNING se define en TRUE, se utiliza el conjunto grande. En caso contrario, estos buffers se asignan al conjunto compartido.

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 LRUEl conjunto grande no tiene una lista LRU. Es distinto al espacio reservado del conjunto compartido, que utiliza una lista LRU.Conjunto JavaRequisitos 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 ProgramasEsta memoria está reservada para cada proceso de usuario que se conecte a una base de datos Oracle, se asigna cuando se crea un proceso y se libera cuando se termina un proceso, sólo la utiliza un proceso.

Page 22: Tarea1Cesar Ortiz

Área Global de Programas

El PGA (Área Global de Programas o Área Global de Proceso) es una región de la memoria que contiene los datos y la información de control de un único proceso de servidor o de un único proceso en segundo plano.Contenido del PGAEl 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. Cada sesión que emite una sentencia SQL tiene un área SQL privada. Cada usuario que ejecuta la misma sentencia SQL tiene su propia área SQL privada que utiliza una única área de SQL compartido.

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.

La ubicación del área SQL privada depende del tipo de conexión establecida para la sesión.

Page 23: Tarea1Cesar Ortiz

• Memoria de Sesión: Consta de memoria asignada para retener las variables de una sesión y otra información relacionada con la sesión. En un entorno de servidor compartido, la memoria de sesión es compartida y no privada.• Áreas de Trabajo SQL: Utilizadas en operaciones con uso intensivo de la memoria como: Ordenación, Unión de Comprobación Aleatoria, Fusión de Bitmaps y Creación de Bitmaps. El tamaño del área de trabajo se puede controlar y ajustar. A partir de Oracle9i, se puede gestionar de forma automática y global el tamaño del área de trabajo. Esta característica se activa definiendo el parámetro WORKAREA_SIZE_POLICY en AUTO, que es el valor por defecto, y el parámetro de inicialización PGA_AGGREGATE_TARGET.Diferencias en la Asignación de Memoria entre Servidores Dedicados y Servidores Compartidos

Page 24: Tarea1Cesar Ortiz

Estructura de Procesos

Oracle se beneficia de varios tipos de procesos:• Procesos de usuario: Se inician cuando un usuario de base de datos solicita una conexión a Oracle Server

• Procesos de servidor: Se conectan a la instancia Oracle y se inician cuando un usuario establece una sesión.

• Procesos en segundo plano: Se inician al iniciar una instancia Oracle

Page 25: Tarea1Cesar Ortiz

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

El proceso de servidor registra los cambios que hay que deshacer y los bloques de datos en la caché de buffers de base de datos. El proceso DBWn escribe los buffers sucios desde la caché de buffers de base de datos en los archivos de datos. Esto asegura que hay un número suficiente de buffers libresDBWn aplaza la escritura en los archivos de datos hasta que se produce uno de los siguientes eventos:

• Punto de control normal o incremental.• El número de buffers sucios alcanza un valor umbral.

Page 26: Tarea1Cesar Ortiz

• Un proceso explora un número determinado de bloques cuando realiza una exploración en busca de buffers libres y no puede encontrar ninguno.• Se produce un timeout.• Se produce una solicitud de sondeo en un entorno RAC (Real Application Clusters).• Se coloca un tablespace normal o temporal offline• Se coloca un tablespace en modo de sólo lectura• Borrado o truncamiento de una tabla• ALTER TABLESPACE nombre del tablespace BEGIN BACKUPLGWR (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 DBWnLGWR realiza escrituras secuenciales desde el buffer de redo log al archivo redo log en las siguientes situaciones:• Cuando se valida una transacción.• Cuando el buffer de redo log se encuentra a un tercio de su capacidad.• Cuando existe más de un megabyte de cambios en el buffer de redo log.• Antes de que DBWn escriba los bloques modificados de la caché de buffers de base de datos en los archivos de datos.• Cada tres segundos.

Page 27: Tarea1Cesar Ortiz

SMON (Monitor del Sistema)Responsabilidades:• Recuperación de instancias

o Aplica los cambios pendientes en los archivos redo log online.o Abre la base de datos para que acceda el usuario.o Deshace las transacciones no validadas.

• Fusiona el espacio libre• Libera los segmentos temporalesSi falla la instancia Oracle, se perderá toda la información del SGA que no se haya escrito en el disco.

La recuperación de la instancia consta de los siguientes pasos:1. Se aplican transacciones pendientes para recuperar los datos que no se hayan registrado en los archivos de datos, pero sí en el archivo redo log online. Estos datos no se han escrito en el disco debido a la pérdida del SGA durante el fallo de la instancia. Durante este proceso, SMON lee los archivos redo log online y aplica los cambios registrados en el archivo redo log online a los bloques de datos. Como todas las transacciones validadas se han escrito en los archivos redo log online, este proceso recupera completamente estas transacciones.2. Se abre la base de datos para que los usuarios se puedan conectar. Cualquier dato que no se haya bloqueado por las transacciones no recuperadas está disponible inmediatamente.3. Se hace un rollback en las transacciones no validadas. SMON o los procesos de servidor individual se encargan de hacer rollback en ellas a medida que acceden a los datos bloqueados.

Page 28: Tarea1Cesar Ortiz

SMON también realiza ciertas funciones de mantenimiento de espacio:• Combina, o fusiona, las áreas adyacentes de espacio libre en los archivos de datos.• Libera segmentos temporales para devolverlos como espacio libre en los archivos de datos.

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 interrumpidosEl proceso en segundo plano PMON realiza una limpieza después de los procesos fallidos de la siguiente forma:• Realizando rollback en la transacción actual del usuario• Liberando todos los bloqueos de tablas o filas actuales• Liberando otros recursos que están reservados en ese momento por el usuario• Reiniciando distribuidores interrumpidos

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

Page 29: Tarea1Cesar Ortiz

ARCn (Archiver)• 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 datosARCn es un proceso en segundo plano opcional, no obstante, es crucial para recuperar una base de datos después de la pérdida de un disco.

Archivado de los Archivos Redo Log OnlineUna 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.

Modo NOARCHIVELOG: En este modo, los archivos redo log online se sobrescriben cada vez que se produce un cambio de log. LGWR no sobrescribirá un grupo de archivos redo log online hasta que el punto de control se haya terminado para ese grupo.Archivado de Archivos Redo Log Online (continuación)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.

Page 30: Tarea1Cesar Ortiz

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

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: Tarea1Cesar Ortiz

La arquitectura de la base de datos Oracle incluye las estructuras físicas y lógicas que conforman la base de datos.

• La estructura física incluye archivos de control, archivos redo log online y archivos de datos que conforman la base de datos.• La estructura lógica incluye tablespaces, segmentos, extensiones y bloques de datos.TablespacesLos datos de una base de datos Oracle se almacenan en tablespaces.

• 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.• Cada tablespace está formado por uno o más archivos del sistema operativo, que reciben el nombre de archivos de datos.• Un tablespace puede tener uno o más segmentos.• Los tablespaces se pueden poner en línea mientras se está ejecutando la base de datos.• 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.• Los tablespaces pueden cambiar entre un estado de lectura y escritura y de sólo lectura.

Page 32: Tarea1Cesar Ortiz

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.• Oracle Server crea un archivo de datos para un tablespace asignando la cantidad especificada de espacio en disco más una pequeña cantidad de sobrecarga.• El administrador de la base de datos puede cambiar el tamaño de un archivo de datos una vez creado, o bien puede especificar que un archivo debería aumentar dinámicamente a medida que aumentan los objetos en el tablespace.

Segmentos• Un segmento es el espacio asignado a una estructura de almacenamiento lógica específica dentro de un tablespace.• 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.

Page 33: Tarea1Cesar Ortiz

ExtensionesEl espacio se asigna a un segmento mediante extensiones.• Una o más extensiones componen un segmento.o Cuando se crea un segmento, éste está formado, como mínimo, por una extensión.o A medida que el segmento va creciendo, se le agregan extensiones.o El DBA puede agregar extensiones a un segmento manualmente.• Una extensión es un juego de bloques Oracle contiguos.• Una extensión no puede abarcar archivos de datos y, por tanto, debe existir en un archivo de datos.Bloques de DatosOracle 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_SIZEcuando 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.• El tamaño máximo del bloque de datos depende del sistema operativo.

Page 34: Tarea1Cesar Ortiz

http://admbdatos.bloggactivo.com/Primer-blog-b1/SISTEMAS-INFORMATICOS-b1-p2.htm

Dirección del blog de la presente tarea: