Está en la página 1de 12

Administracin de

Bases de Datos
ORACLE

Arquitectura de un
Servidor ORACLE

Funciones del DBA




Instalar y actualizar el servidor Oracle y las


herramientas de aplicacin.
Asignar el almacenamiento del sistema y
planear los requerimientos de almacenamientos
futuros.
Crear las estructuras de almacenamiento de
base de datos (tablespaces)
Crear los objetos primarios de las aplicaciones.

Funciones del DBA





Modificar la estructura de la base de


datos, segn sea necesario.
Mantener la seguridad del sistema.



Crear los usuarios y roles.


Controlar y monitorizar el acceso de los
usuarios a la base de datos.

Asegurar el cumplimiento del acuerdo de


licencia.

Funciones del DBA




Monitorizar y optimizar la performance de


la base de datos.
Seguridad de los datos





Planificar los backup.


Realizar el backup
Realizar la recuperacin de la informacin.
Mantener las copias adecuadamente.

Arquitectura de Oracle Server


User
process

Shared Pool
Library
Cache

Server
process

Instance
SGA

Stream Pool

Database
Buffer Cache

Data Dictionary
Cache

Redo Log
Buffer
Large Pool

Java Pool

PGA
PMON SMON DBWR LGWR

Parameter
file
Password
file

Data
files

Control
files

CKPT

Redo log
files

Others

Archived
log files

Database

Oracle Server


Es un sistema de Gestin de
bses de datos que proporciona
un enfoque abierto, global e
integrado de la gestin de la
informacin.
Esta formado por una instacia
Oracle y una base de datos
Oracle.

Oracle Server

Conexin a un Servidor Oracle




Conexin


Es un camino de comunicacin entre un


proceso usuario y el servidor de base de
datos.

Sesin


Es una conexin especfica de un usuario a


un servidor Oracle.

Conexin a un Servidor Oracle


Connection
established
User
process

Server
process
Session created
Oracle server

Database user

Conexin a un Servidor Oracle




Procesos Usuario



se ejecuta en la mquina cliente


es creado cuando una herramienta o una aplicacin
es invocada y es terminado cuando el usuario se
desconecta, o es forzado a desconectarse
ejecuta el cdigo de un programa aplicacin o
herramientas Oracle
genera una llamada al servidor cada vez que el
usuario realiza una solicitud.

Conexin a un Servidor Oracle




Procesos Servidor






se ejecutan en la misma mquina que el servidor


cada proceso servidor sirve solamente a un proceso
de usuario (Servidor Dedicado)
cada proceso servidor utiliza un rea de memoria
llamada Program Global Area (PGA)
procesa llamadas generadas por el cliente
retorna informacin de estado y resultados al proceso
usuario.

Base de Datos
Oracle Database

Parameter
file

Data
files

Control
files

Redo log
files

Archived
log files

Password
file

Estructura Fsica


Data Files


Se debe considerar las caractersticas de los


datos a ser almacenados en orden a:






Minimizar la fragmentacin y la disputa por el disco.


Separar objetos.

Solo pueden estar asociado a una sola BD


Se pueden extender automticamente cuando la
BD necesita espacio.

Estructura Fsica


Control Files


Contiene informacin sobre la estructura fsica de la


BD









Nombre de la BD y timestamp de su creacin.


Nombre y hubicacin de los datafiles y online redo log files.

Oracle permite la multiplexacin de este archivo.


Se debe crear al menos dos control files en dos
discos diferentes.
Se utiliza para la recuperacin de la BD.
Contiene informacin necesaria para mantener y
verificar la integridad de la Base de Datos.

Estructura Fsica


Online Redo Log Files




Su principal funcin es almacenar todos los cambios


que se producen sobre los datos.
Se utilizan para la recuperacin de la BD ante una
falla en el sistema.
Deben consistir de al menos dos grupos de online
redo log files multiplexados.
Un grupo de log files consiste de copias idnticas
(miembros), que deberan ser ubicadas en discos
distintos.

Otros Archivos


Parameter File


Password File


Contine los parmetros de configuracin de la BD y


la instancia Oracle (PFILE / SPFILE).
Se recomienda utilizar SPFILE, para mantener en
forma dinmica a los parmetros de inicializacin
Sirve para autenticar ciertos privilegios de usuarios
(SYSDBA y SYSOPER) de la base de datos.

Archived redo log files






Copias offline de los redo log files.


Se debe configura la BD en modo ARCHIVELOG.
El archivado puede ser automtico o manual.

Instancia Oracle




Es un medio de acceso a una base de datos Oracle


Siempre abre una nica base de datos
Esta formada por procesos background y una estructura de
memoria
Shared Pool
Library
Cache
Data Dictionary
Cache

Instance
SGA
Database
Buffer Cache
Java Pool

PMON SMON DBWR LGWR

Stream Pool
Redo Log
Buffer

Memory
structures

Large Pool

CKPT

Others

Background
structures

SGA (System Global Area)




Esta formada por varias estructuras:










Shared Pool
Database Buffer Cache
Redo Log Buffer
Large Pool (opcional)
Java Pool
Streams pool
Otras estructuras

Es dinmica, asignada y con seguimiento en grnulos por


componentes del SGA



Asignacin de memoria virtual contigua


El tamao del grnulo se basa en el valor de SGA_MAX_SIZE total
estimado (4 MB si el SGA es < 1 GB y 16 MB si el SGA es > 1 GB,
en 32 bit es de 8 MB)

SGA (System Global Area)


Tamao definido por el parmetro SGA_MAX_SIZE
Administracin automtica del SGA: SGA_TARGET




Administracin automtica de componentes del SGA:








Shared Pool
Database Buffer Cache
Large Pool (opcional)
Java Pool
Streams pool

Administracin manual de componentes del SGA:






Keep y Recycle Buffer Cache


Redo Log Buffer
Bufferrs para bloques de tamao no estndar

Informacin: V$SGAINFO, V$SGA_DYNAMIC_COMPONENTS,

V$SGA_RESIZE_OPS

Shared Pool


Contiene las sentencias SQL ejecutadas y datos del


diccionario de datos usados.
El tamao del shared pool es especificado por el
SHARED_POOL_SIZE. (por default 8MB en 32-bit y 64MB
en 64-bit)

Se puede cambiar el tamao dinmicamente

Componentes
 Library Cache

ALTER SYSTEM SET SHARED_POOL_SIZE = 100M;





Texto de las sentencias, Parse tree, Execution plan


Permite compartir las sentencias utilizadas con mayor frecuncia.
Gestionada por el algoritmo LRU (utilizados menos
recentemente)

Shared Pool


Componentes


Data Dictionary Cache




almacena la informacin del diccionario de datos ms


recientemente utilizada.
Durante la fase parse, el proceso servidor busca informacin en el
dictionary cache para resolver los nombres de objetos
especificados en las sentencias SQL y valida los privilegios de
acceso
Si es necesario, el proceso servidor inicia la carga de esta
informacin desde los data files.
Mejora el tiempo de respuesta de las consultas y sentencias DML

Database Buffer Cache




Almacena los bloques de datos que se han recuperado


de los archivos de datos.
Permite grandes mejoras de rendimiento al obtener y
actualizar datos.
DB_BLOCK_SIZE determina el tamao del bloque
primario/estndar
El servidor Oracle utiliza un algoritmo LRU para vaciar
los buffers. (ms recientemente utilizados)

Database Buffer Cache




Est formado por subcachs independiente:






DB_CACHE_SIZE
DB_KEEP_CACHE_SIZE
DB_RECYCLE_CACHE_SIZE

Se puede cambiar el tamao dinmicamente

DB_CACHE_ADVICE recoge estadsticas para predecir


el comportamiento de las estructuras de memoria.
Estadisticas mostradas por: V$DB_CACHE_ADVICE

ALTER SYSTEM SET DB_CACHE_SIZE = 128M;

Redo Log Buffer







Utilizado para registrar los cambios hecho en los


bloques de datos de la base de datos.
Su finalidad principal es la recuperacin.
Los cambios se guardan en los registro de redo, los
cuales contienen informacin que permite
reconstruir o rehacer cambios.
Su tamao en bytes se encuentra definido por el
parmetro LOG_BUFFER.

Large Pool




Area opcional del SGA


Libera al shared pool de su carga
Se utiliza para:





Memoria de sesin (UGA) para el servidor


compartido
Procesos de servidor de E/S
Backups y Recovery con RMAN

Tamao definido por LARGE_POOL_SIZE

Se puede cambiar el tamao dinmicamente


ALTER SYSTEM SET LARGE_POOL_SIZE = 32M;

Java Pool


Requerimientos de anlisis para comandos Java y


de la JVM
Tamao definido por el parmetro
JAVA_POOL_SIZE
El tamao por defecto es 24 MB

Program Global Area







Contiene datos e informacin de control para un nico proceso


servidor o un nico proceso background.
Se asigna cuando se crea un proceso y se libera cuando se
termina.
Solo la utiliza un proceso.
El PGA contiene:


Area SQL privada: contiene datos y estructuras de memoria de


tiempo de ejecicin.
Memoria de sesin: contiene las variables de sesin e
informacin relacionada con la sesin.
Area de trabajo SQL: utilizada en operaciones de uso intensivo de
memoria como ser: sort, creacin de bitmaps.

Procesos Background


Database Writer (DBWRn)




Log Writer (LGWR)




responsable de escribir los datos cambiados en la


base de datos.
graba los cambios registrados en el redo log
buffer en la base de datos (redo log files).

System Monitor (SMON)




comprueba la consistencia e inicia la reactivacin


de la base de datos cuando la misma es abierta.

Procesos Background


Process Monitor (PMON)

Checkpoint Process (CKPT)

reorganizar los recursos si uno de los procesos falla.


actualiza la informacin de estado de la base de
datos cuando los cambios en el buffer cache son
registrado de modo definitivo en la misma.

Archiver (ARCn)


se carga de escribir enlos redo log off-line cuando la


base esta en modo archivelog

Database Writer (DBWR)




DBWR difiere la escritura en los


data files hasta que algunos de
los siguientes eventos ocurra:






El nmero de dirty buffers alcanza


un valor umbral.
Un proceso explora un nmero
especificado de bloques en busca
de buffers libres y no puede
encontrar ninguno.
Un temporizador se vence.
Un punto de chequeo (checkpoint).
Tablespace OFFLINE, BEGIN
BACKUP o READ ONLY.
DROP o TRUNCATE de una tabla.

Instance
SGA
Database
Buffer
Cache

DBWn

Datafiles Control
files

Redo
Log
files

Database
Database

10

Log Writer (LGWR)




Instance
SGA

Realiza escrituras
secuenciales en el redo log
file bajo las siguientes
situaciones:


Redo Log
Buffer

Cuando se valida una


transaccin.
Cuando un redo log buffer est
un tercio lleno.
Cuando un temporizador finaliza
(cada tres segundos).
Antes que el DBWR escriba
bloques modificados en el
database buffer cache a los data
files.

DBWn

LGWR

Datafiles Control
files

Redo
Log
files

Database

System Monitor (SMON)







Instance
SGA

Recuperacin 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 de


los datafiles
Libera los segmentos
temporales

SMON

Datafiles Control
files

Redo
Log
files

Database

Proces Monitor (PMON)




Instance
SGA

Hace una limpieza


cuando los procesos
han fallado:


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

PMON

PGA area

11

Checkpoint (CKPT)



Instance
SGA

Sealar a DBWn en los


puntos de control.
Actualizar las cabeceras de
archivo de datos y los
archivos de control con
informacin del punto de
control.
Reduce el tiempo necesario
para la recuperacin de una
instancia.
Garantiza que todos los
datos validados se han
escrito en los archivos de
datos durante el cierre.

DBWn LGWR CKPT

Datafiles Control
files

Redo
Log
files

Database

Archiver (ARCn)



Proceso opcional
Archiva automticamente archivos de redo log
online si est definido el modo ARCHIVELOG
Protege el registro contra todos los cambios
realizados en la base de datos
Datafiles Control
files

Redo
Log
files

ARCn

Archived
Redo Log
files

12

También podría gustarte