Está en la página 1de 35

Servidor de Base de Datos Oracle

Visión General
• El administrador de base de datos (DBA), debe comprender
que la arquitectura ofrecida por Oracle, gestiona una base de
datos.
• Para entender la forma en que el servidor Oracle funciona,
se debe analizar los siguientes componentes:
• Estructura de base de datos y gestión de del espacio
• Estructuras de memoria
• Procesos
• Otros archivos importantes
Definición

• ORACLE, es un Sistema gestor de base de datos


relacionales. Sus dos componentes son:
• La instancia
• La base de datos
Definición
• Instancia:
• Corresponde a las estructuras y los procesos de
background usados para accesar los datos.
• Base de Datos
• En Oracle el término de Base de Datos se usa para
presenter los archivos físicos donde se almacena la
información.
Instancia
• Es un conjunto de procesos de memoria compartida que proporcionan
el mecanismo necesario para acceder a un conjunto de archivos de
base de datos.
• Para iniciar una base de datos se utiliza: STARTUP. Para bajarla o
suspender el servicio se utiliza SHUTDOWN.
• Para iniciar la base de datos se
requiere el archivo de parámetros
INIT.ORA
• Buffer: es una parte de la
memoria de Oracle para
almacenar datos que son
utilizados por alguna session.
• Commit: confirma una
transacción.
• Caché: es una parte de la
memoria, entre los que mas
memoria consumen está el de las
instrucciones de SQL y el de
datos.
Gestor de Transacciones
• Una transacción es una colección
de operaciones que se lleva a cabo
con una única función lógica en una
aplicación de BD.
• El Gestor de Transacciones asegura
que la base de datos se mantiene
en un estado consistente (correcto)
ante el fallo de sistemas y
transacciones.
• El Gestor de control de
concurrencia controla la interacción
entre las transacciones
concurrentes, para asegurar la
consistencia de la base de datos.
Gestor de Almacenamiento
• El gestor de almacenamiento es un
módulo del programa que
proporciona la interfaz entre los
datos de bajo nivel en la BD y los
programas de aplicación y
consultas emitidas por el Sistema.
• El gestor de almacenamiento es el
responsable de las siguientes
tareas:
• Interactuar con el gestor de
archivos
• Almacenamiento, recuperación
y actualización de BD
Estructura de la base de datos
• Estructuras lógicas
• Estructuras físicas
Estructuras Lógicas
• Tablespaces
• Objetos de esquemas
Tablespace
• División lógica de la base de datos.
• En toda base de datos se tiene al
menos un tablespace denominado
generalmente System.
• Se definen otros tablespaces para
agrupar usuarios, aplicaciones o por
criterios de rendiminetos. Se agrupan
estructuras lógicas relacionadas. Ej.
USERS, RBS, TEMP, INDEX, DATA.
• Un tablespace puede estar online o
puede estar offline. Lo normal es que
estén en línea.
• Relación base de datos, Tablespaces y
Datafiles
Tablespaces

Un Tablespace puede estar compuesto de uno o mas datafiles


Esquema y Objetos • Un esquema es una colección de
objetos
• Los objetos son estructuras lógicas,
que se refieren a datos almacenados
• Tablas
• Vistas
• Secuencias
• Procedimientos almacenados
• Índices
• Sinónimos
• Listas de base de datos
• No se relaciona un esquema con un
tablespaces y viceversa
Estructuras Físicas
• Datafiles
• Archivos Redolog
• Archivos de control
• Otros archivos
Datafiles
• La base de datos pueden tener uno o mas datafiles
• Son los que contienen información de la base de dato.
Son archivos físicos del Sistema operativo.
• Un datafile solo puede pertencer a un tablespaces y por
ende a una sola base de datos.
• Uso:
• Se leen y se colocan en memoria según sea necesario
• Para escribir a disco los cambios el DB Wn se encarga de
hacerlo todo a la vez y no inmediato al cambio
Archivos REDO LOG
• Se tiene un conjunto de dos o mas
redo logs.
• En estos se lleva la bitácora de cambios
• Previenen de posibles errores, cuando
falla la base de datos y no se han
escrito a disco los cambios.
• Sólo se utilizan para recuperar la base
de datos en caso de caída.
• Los redo logs pueden ser
multiplexados
• Una DB debe poseer 2 o mas redo log
files ya que Oracle escribe en ellos en
forma circular.
Archivos de Control
• Se tiene al menos un archivo de control.
• Mantiene la estructura física de la base
de datos
• Nombre
• Ubicación de redologs
• Ubicación de datafiles
• Fecha de creación de base de datos,
etc
• Cuando la base de datos es instanciada,
se busca este archiva
• Cada vez que cambia la estructura física
de la base de datos se modifica el
control file
Archivo de parámetros
• Para iniciar la instancia de Oracle, se debe leer
el archivo de parámetros init.ora.
• Archivo de texto con la lista de parámetros de
configuración.
• Dentro de los aspectos que se definen están:
• Asignación para la memoria para las
estructuras SGA (Área Global del Sistema)
• Que hacer con los archivos redo log
• Nombre y ubicación de los archivos de
control
• Algunas reglas sobre los parámetros son:
• Todos son opcionales, Oracle tiene un valor
por defecto para cada uno.
• El archivo de parámetros o comentrios
(iniciados con #)
Archivo de Parámetros: reglas
• El orden en que aparecen los
parámetros no es importante.
• El case no es importante,
excepto para nombres de
archivos.
• Si un parámetro aparece 2
veces el Segundo reescribe al
primero.
• Existen algunos parámetros
que pueden aceptar valores
como el ROLLBACK_SEGMENTS
= (rb1, rb2, …)
¿Qué es el SGA (Sistema Global de Almacenamiento)?
• Es una estructura básica de memoria
de Oracle que sirve para facilitar la
transferencia de información entre
usuarios y también almacena la
información estructural de la BD más
frecuentemente requerida.
• El SGA y un conjunto de procesos de la
base de datos constituyen una
instancia de una base de datos Oracle.
La base de datos Oracle
automáticamente reserva memoria
para el área global del sistema cuando
se inicia una instancia, y el sistema
operativo reclama la memoria cuando
se apaga dicha instancia. Cada
instancia tiene su propia SGA.
Configurar el tamaño del SGA
• SHARED_POOL_SIZE
• Especifica la cantidad de bytes a
utilizar para el área donde se
comparten las declaraciones
SQL y PL/SQL.
• DB_BLOCK_SIZE
• Especifica el tamaño en bytes
del bloque de datos utilizados
por Oracle. Los valores típicos
son 2048 y 4096
• Este valor se determina al crear
la base de datos y debe ser
mantenido al resto del tiempo
Configurar el tamaño del SGA
• DB_BLOCK_BUFFER
• Especifica la cantidad de
búferes para el cache de
datos. Este parámetros
junto al DB_BLOCK_SIZE,
determinan el espacio
requerido por el búfer.
• LOG_BUFFER
• Especifica el tamaño en
bytes a utilizar en el búfer
donde almacena la
información de redo log
antes de enviarla a los
archivos.
Archivo de seguimiento (TRACE)

• Trace Files, son archivos en los


que se regisran mensajes y
errores durante la ejecución de
una instancia Oracle.
• Se ubican según los valores de:
• BACKGROUND_DUMP_DEST
• USER_DUMP_DEST
Archivo de alertas
• El Alert Log es un archivo especial de seguimiento, que registra
mensajes y errores cronológicamente como por ejemplo:
• Errores internos (ORA-600), corrupción de bloques (ORA-1578) y errores de deadblock
(ORA-60).
• Operaciones administrativas como creación o modificación de la base de datos,
tablespaces, datafiles, segmentos de rollback y los correspondientes a STARTUP,
SHUTDOWN y ARCHIVE LOG.
• Distintos errores relacionados con los procesos de servidor compartido (servidor
compartido y despachadores).
• Errores en la actualización de snapshots
• El valor de todos los parámetros de inicialización al momento de subir la instancia
Estructura de Memoria
SGA – System Global Area
Estructura de Memoria
Shared Pool
Estructura de Memoria
Database buffer cache
Estructura de Memoria
Redolog buffer
Procesos
• Procesor de Servidor y
Backgorund
• Shared Server Process.
• Dedicated Server Process
• SMON
• PMON
• DBWn
• LGWR
• RECO
• LCK0
• CKPT
• ARCn
• D000
Procesos del Servidor
• Dedicarte Server
Process
• Define un proceso de
servidor por cada
proceso de usuario
• Shared Server Process
• Atiende varios
procesos de usuario
con un conjunto
limitado de procesos
de servidor
• Mejora la utilización de
recursos
Procesos
• SMON (System Monitor)
• Realiza la recuperación automática de la base de datos al iniciar.
• Libera espacio de los segmentos temporales de rollback no utilizados
• Une las áreas continuas de espacio libre en los datafiles.
Procesos
• PMON (Monitor de Procesos)
• Realiza la recuperación automática cuando el proceso usuario falla.
• Libera conexiones
• Deshace transacciones que no han sido confirmadas (commit)
• Libera procesos y recursos obtenidos por el proceso fallido
• Restaura procesos de servidor y despachadores que hayan fallado
• Elimina conexiones terminadas abruptamente
Procesos
• DBW n (Escritor de base de datos)
• Gestiona el contenido de los bloques “Database buffer cache”.
• Pueden instanciarase mas de un proceso DBW n según las necesidades
de cada instalación.
• LGWR (Escritor de logs)
• Escribe las entradas secuenciales del “redo log buffer” a disco.
• La escritura la realiza cada vez que una transacción es confirmada.
• RECO (Recover Processes)
• Es opcional recupera transacciones distribuidas con errores.
• LCK0 (Lock Process)
• Realizan bloqueos entre instancias en un sistema de servidores
paralelos.
Procesos
• CKPT (Punto de control)
• Comunica a los DBWn el momento de actualizar los datafiles con la
información de los cambios en memoria.
• ARCn (Archivador)
• Copia los Redo log que están en línea a disco o cinta.
• Este es un proceso opcional que se ejecuta cuando se está en modo
ARCHIVELOG y el archivado automático está habilitado.
• Permite recuperar la base de datos de errores en medios físicos.
• D000 (Despacher Processes)
• Los despachadores son procesos opcinales.
• Se activan en modo multi-threaded server (multi-hilos)
• Cada proceso es responsable de enrutar la petición de los procesos de
usuarios conectados a través de ellos.
Procesos

También podría gustarte