4,79/5
(16 opiniones)
|16142 alumnos|Fecha publicación: 01/02/2006
La información de la base de datos almacenada por el usuario y la información propia del SGBDR que son necesarios para su correcto funcionamiento están almacenados en ficheros en la memoria secundaria del servidor; es decir, en los discos duros.
El SGBDR de Oracle accede a ellos a través de lo que se conoce como una instancia, la cual está formada por unas estructuras de memoria y un conjunto de procesos que se ejecutan en segundo plano.
Para que los usuarios puedan conectarse a la base de datos y consultar o manipular los datos almacenados en la misma, es necesario que la instancia esté arrancada.
En la página de inicio se muestra información sobre la instancia : nombre, estado, ...

Pinchando en el botón "cerrar" se inicia el proceso de cierre de la instancia, pero será necesario introducir de nuevo los datos de un usuario válido del sistema operativo y del servidor de base de datos.
En Windows hay un servicio (OracleService<SID>) que se corresponde con los procesos de la instancia, y que tiene como sufijo el nombre de la misma. Desde la ventana de servicios se puede iniciar o detener este servicio, cuyo resultado es la apertura o cierre de la instancia de la base de datos.

Además, en Windows hay otros dos servicios relacionados con la instancia que son el asociado al Listener (Oracle<Oracle_home><SID>Listener) y el que permite la conexión de los clientes al Enterprise Manager (Oracle<Oracle_home><SID>DBConsole)
Estructuras de memoriaComo ya vimos durante la creación de la base de datos se ofrecía la posibilidad de particularizar el tamaño de las estructuras de memoria denominadas SGA y PGA; aunque utilizamos los valores recomendados por el asistente, vamos a ver ahora brevemente en qué consisten estas estructuras.
La SGA (Shared Global Area) es un área de memoria compartida que almacena datos e información de control de la instancia. La información almacenada en la SGA puede ser accedida por múltiples usuarios, y evita tener que acceder a la memoria secundaria (disco duro) a buscarla, lo que permite acelerar la respuesta del sistema.
Lo ideal sería que toda la información estuviera en la memoria principal y la SGA tuviera suficiente tamaño para contenerla, pero esto no es viable y hay que buscar una solución de compromiso en la cual se encuentre en memoria principal un alto porcentaje de datos que evite tener que acceder frecuentemente a la memoria secundaria. Esta no es una tarea fácil, pero el Enterprise Manager proporciona recomendaciones para gestionar y optimizar el rendimiento de los "Parámetros de Memoria".


Como se ve en las gráficas, la SGA se divide en varias otras estructuras donde las más importantes son:
|
Nombre |
Descripción |
|
Caché de Buffers (45%) |
Todos los datos de la base de datos que van a ser leídos o modificados, han de ser almacenados previamente en esta área. |
|
Pool Compartido (45%) |
Contiene información para compartir entre los usuarios como sentencias SQL y procedimientos almacenados recientemente ejecutados. |
La PGA en cambio es un área de memoria específica para cada proceso y contiene información de conexión y propia de la sesión.

Como ya se ha comentado en Windows hay un único servicio (OracleService<SID> ) que agrupa los servicios que en otros sistemas operativos como Unix se ejecutan como demonios independientes. Para la compresión de las tareas que realiza es mejor describirlos por separado.
|
Servicio |
Descripción |
|
Data Writer |
Se encarga de escribir en la base de datos los bloques de información modificados en el Buffer Cache de la SGA |
|
Log Writer |
Se encarga de escribir los ficheros de Redo Log en el disco |
|
SYSTEM Monitor |
Se encarga de realizar la recuperación del sistema cuando se arranca una instancia que había caído anteriormente. Hay que tener en cuenta que el servidor se puede apagar voluntario o involuntariamente sin haber apagado la base de datos previamente. Al volver a iniciar el servidor y arrancar la base de datos, esta se recupera automáticamente y no se producen pérdidas de datos. |
|
Process Monitor |
Se encarga de liberar los recursos utilizados por los procesos de usuario que fallan. |
|
Archiver |
Cuando la base de datos está en modo archivado, se encarga de almacenar los ficheros de redo log que están llenos. |
La instancia ha de estar arrancada para que los usuarios puedan conectarse y operar con la base de datos.
En Windows ya hemos visto que los servicios asociados a la instancia se arrancan automáticamente. También hemos visto que si se cierra el sistema operativo sin haber cerrado previamente la base de datos, la instancia de la base de datos sufre una caída que se recupera automáticamente la próxima vez que se arranque. Por lo tanto, en general no es necesaria la intervención del administrador para abrir o cerrar la instancia.
En algunos sistemas operativos o por configuración puede ser necesario que un administrador tenga que abrir y cerrar la instancia manualmente. Para realizar esta tarea puede utilizar el Enterprise Manager conectándose con privilegios de SYSADMIN o SYSOPER que permiten realizar cualquier tipo de operación o administrar sólo la base de datos respectivamente. Estos privilegios los tienen por defecto el usuario SYS.
Durante el proceso de apertura de la instancia se realizan las siguientes tareas:
Oracle lee el fichero de parámetros
Crea las estructuras de memoria
Inicia los procesos de segundo plano
Si se monta la base de datos, además se abre el fichero de control. Cuando la base de datos está montada se permite realizar tareas administrativas, pero no la conexión de otros usuarios.
Si se abre la base de datos, se abren los ficheros de redo log y datos. Cuando la base de datos está montada y abierta se permite que los usuarios se conecten e interactúen con ella.
Por defecto al abrir la instancia, la base de datos se monta y abre.
Al cerrar la instancia se ejecutan los mismos pasos en orden inverso.
Por defecto la base de datos se cierra inmediatamente desconectando a los usuarios que estén conectados y deshaciendo las transacciones no completadas,

aunque se pueden seleccionar otro tipo de cierres que afectan de diferente forma a las transacciones en curso de los usuarios : normal, transaccional, inmediato o abortar.

Durante el proceso de creación de la base de datos el asistente a optimizado los valores de los parámetros de inicialización, aunque el DBA puede modificarlos posteriormente para mejorar el rendimiento.
Una vez leídos los parámetros son almacenados en memoria principal y muchos de ellos pueden ser modificados dinámicamente durante el funcionamiento de la base de datos.
Los parámetros se almacenan en un fichero denominado SPFILE (Server Parameter File) mantenido en el servidor de Oracle, y que almacena de forma persistente los cambios que se realicen dinámicamente.
Desde la página de administración de la instancia, se pueden consultar los parámetros de inicialización.

La página de parámetros muestra tanto los valores contenidos en el fichero SPFILE como los que se están utilizando en ese momento.
La pantalla permite introducir distintos criterios para filtrar los parámetros mostrados en base a:
su nombre. Se pueden introducir patrones de búsqueda.
si es básico. Los parámetros identificados como básicos son un subconjunto que se considera que es imprescindible para mantener operativa la base de datos sin problemas.
si ha sido modificados.
si es dinámico. Los cambios realizados en los parámetros dinámicos son aplicados automáticamente por la instancia de la base de datos, mientras que los estáticos obligan a parar y arrancar la instancia.
en base a la categoría a la que está asignado.

Se pueden modificar los valores de todos los parámetros, y aunque Enterprise Manager ejecutará de forma transparente al usuario la sentencia SQL apropiada, se puede consultar pinchando en el botón "Mostrar SQL"

Hay 16 opiniones. Opina sobre este curso.
| Cursos | Valoración | Alumnos | Vídeo | |
|---|---|---|---|---|
|
PHP y MySQL. Aplicaciones Web: programación PHP I (quinta parte) Programación de aplicaciones Web con PHP y MySQL. Ahora estudiaremos el Lenguaje de programación PHP. Aprende ahora las formas de escribir las etiquetas ... [02/12/08] |
|
1.076 | ||
|
Generadores de código Necesitamos construir proyectos en menor tiempo, con calidad y utilizando metodologias actuales, por eso te proponemos una serie de consejos, normas y cualidades de est... [24/01/06] |
|
2.258 | ||
|
SQL SQL (Structured Query Language) es un lenguaje de programación para acceder y manipular bases de datos. SQL surgió de un proyecto de IBM en el que investigaba e... [10/05/04] |
|
34.866 | ||
Publicar en
del.icio.us
digg
meneame