Oracle : Instancia

by admin

Share

RodrigoSeo
Por @RodrigoSeo twitter Tweet This


La instancia en Oracle describe varios procesos residentes en la memoria del computador(es) y un área de memoria compartida por aquellos procesos. En arquitecturas de bases de datos tales como, Microsoft SQL Server y IBM BD2, la palabra instancia indica una colección de bases de datos que comparten recursos de memoria en común, o sea, la relación entre instancia y bases de datos es 1 a N. Pero la relación entre la instancia de Oracle y la base de datos es 1 a 1 o n a 1. Cuando hay una relación N a 1, la configuración es llamada RAC (Real Application CLuster), donde la base de datos reside en discos compartidos y  las instancias en múltiples computadores anexados a la base de datos.

La instancia de Oracle es el motor que procesa los requerimientos de datos desde la base de datos. Está compuesta por procesos en primer plano, en segundo plano y un área de memoria compartida (SGA).

Una instancia de Oracle es un conjunto de estructuras de memoria que están asociadas con los archivos de datos(datafiles) en una máquina. Una base de datos (database) es una colección de archivos físicos.

INSTANCIA DE ORACLE

  •  La integran los procesos “background” y la SGA
  •  Abre una y sólo una BDO, y permite acceder a ella.
  • Nota: con Oracle Real Application Cluster (RAC), más de una instancia usarán la misma BD.
  •  En la máquina donde reside el servidor Oracle, la variable ORACLE_SID identifica a la instancia con la que estamos trabajando.

 

VISTAS

  • V$DATABASE (Base de datos).
  •  V$INSTANCE (Instancia).
  •  V$SGA (SGA).
  •  V$SGAINFO (Gestión dinámica de la SGA).
  •  V$SGASTAT (SGA detallada).
  •  V$BUFFER_POOL (Buffers en la caché de datos)
  •  V$SQLAREA (Sentencias SQL).
  •  V$PROCESS (Procesos).
  •  V$BGPROCESS (Procesos background).
  •  V$DATAFILE (Ficheros de datos de la BD).
  •  V$CONTROLFILE (Ficheros de control de la BD).
  •  V$LOGFILE (Ficheros redo log de la BD).
  •  DBA_TABLESPACES (Tablespaces de la BD).
  •  DBA_SEGMENTS (Segmentos que hay en los tablespaces).
  •  DBA_EXTENTS (Extensiones que componen los segmentos).
  •  DBA_USERS (Usuarios de la BD).

 



{ 6 comments… read them below or add one }

CARLOS ANDRES abril 8, 2010 a las 11:05 pm

Muchas gracias por tu articulo en una forma muy clara y entendible de lo que es una instancia de oracle

arturo septiembre 4, 2010 a las 7:44 pm

muy bueno!!!!

admin septiembre 4, 2010 a las 9:00 pm

Me están agarrando para el leseo :D , 0k 0k 0k, ya bueno que quieren saber de esto, es que hace tiempo no lo veía y casi me muero de la risa con esto, gracias por sus joviales comentarios, pero vamos a sacarle el jugo, que quieren saber de esto?, o algo más especifico?

Saludos Cordiales

NT: Ahora que lo vi, pienso que no la entiende ni uno :D :D:D

arturo septiembre 8, 2010 a las 12:32 am

hola
por favor podrias explicarnos cuando usar configuracion de cluster en base de datos oracle 11g y donde encontrar un buen ejemplo de esto

admin septiembre 12, 2010 a las 8:19 am

Hola Arturo, veo que eres de Lima Peru, saludos. Tú pregunta da para un libro entero, pero bueno trataremos de explicar lo que es un Oracle RAC(Real Application CLuster). En un Rac de Oracle, múltiples instancias permiten el acceso a una única Base de datos. En un RAC las instancias corren en múltiples Nodos(servidores), y accesan a un conjunto común de datafiles que comprender a una “Única” Base de datos.
En constraste, en un ambiente de una única instancia, una base de datos Oracle es usada por sólo UNA Instancia corriendo en el servidor. Por lo Tanto , los usuarios accediendo a la base de datos pueden conectarse a ésta, sólo a través de ese “Único” servidor.
En un Oracle RAC, una base de datos puede ser montada por más de una instancia , y en cualquier punto, una instancia será parte de sólo una Base de datos. El almacén no volátil para archivos de datos(datafiles) que comprende la Base de datos es igualmente disponible a todos los nodos, para el acceso de lectura y escritura. De lo anterior se desprende que un RAC de Oracle necesita coordinar y regular el acceso “simultaneo” a los datos desde múltiples servidores(nodos), por ende, debe existir una red privada que sea eficiente, confiable y de alta rapidez, entre los nodos del cluster para enviar y recibir datos.

La configuración de Cluster que tú preguntas, es cuando quieres crecer en forma horizontal, no limitándote al hardware y software que tienes, pues sino, debería añadir más CPU, etc.. y de igual manera tendrías problemas al escalar. Ahora bien , un ejemplo de esto, tendremos que buscarlo, pues no tengo a la mano, pero si quieres ser más especifico con la pregunta sería mejor, por ejemplo que ambiente ya tienes, el proyectado, etc…..

Saludos Cordiales, y espero tú respuesta para seguir compartiendo información.
:)

adrianav septiembre 20, 2010 a las 11:06 am

Hola, que diferencia existe entre instancia y ambiente?, por que aca lo usan como lo mismo y muy pocas personas lo tienen claro!

Leave a Comment