miércoles, 17 de septiembre de 2008

Arranque y parada de una base de datos Oracle

Objetivos

Explicar brevemente en qué consiste el arranque y parada de una base de datos ORACLE

Arrancar base de datos

El arranque de una base de datos ORACLE requiere tres etapas
  1. Arrancar la instancia
  2. Montar la base de datos
  3. Abrir la base de datos

  1. Arrancar la base de datos

En esta parte del arranque se generan los procesos background.
Se crea la SGA. Sus dimensiones se basan en el fichero de inicialización "init.ora".


SQLPLUS> connect sys as sysdba

connected

SQLPLUS> startup nomount

Oracle Instance started

2. Montar la base de datos


En esta parte del proceso de arranque se produce la conexión al/los archivo/s de control.
En este estado se puede:

  1. Cambiar el modo de archivado de la B.D.
  2. Renombrado de archivos de Redo Log o del asociado al tablespace SYSTEM
  3. Crear, modificar o suprimir nuevos Redo Log o grupos de Redo Log


Partiendo del anterior estado ( nomount ), montamos la base de datos de la siguiente forma:


SQLPLUS> alter database mount

database mounted


En caso de que queramos iniciar la base de datos en este estado bastaría con hacer lo siguiente:


SQLPLUS> connect sys as sysdba

connected

SQLPLUS> startup mount

Oracle Instance started

Database mounted


3. Abrir base de datos


En esta parte de proceso abren todos los ficheros asociados a los tablespaces y los ficheros de Redo Log.
La B.D. está accesible para todos los usuarios
Si es necesaria una recuperación (por un fallo de luz o CPU), se produce en este momento.
Partiendo del anterio estando ( mount ), abrimos la base de datos de la siguiente forma:


SQLPLUS> alter database open

database opened


En caso de que queramos iniciar la base de datos en este estado bastaría con hacer lo siguiente:


SQLPLUS> connect sys as sysdba

connected

SQLPLUS> startup

Oracle Instance started

Database opened


Mas alternativas para el arranque de base de datos


Arranque solo para usuarios con el privilegio RESTRICTED SESSION


SQLPLUS> startup restrict


Arranque forzado


SQLPLUS> startup force


Arranque con un fichero de parámetros distinto al habitual o localizado en una situación diferente a donde se encuentra por defecto


SQLPLUS> startup pfile=/oracle/database/init2.ora


Parada base de datos


La parada de una B.D. Oracle se realiza mediante el comando SHUTDOWN desde SQL*DBA después de haber establecido una conexión como SYS AS SYSDBA
Existen tres tipos de shutdown

  1. shutdown normal
  2. shutdown immediate
  3. shutdown abort


  1. Shutdown normal


Espera a que los usuarios conectados actualmente finalicen TODAS las operaciones.
Evita nuevas conexiones. Los usuarios que intentan conectarse reciben el mensaje "Shutdown in progress".
Cierra y desmonta la B.D. Cierra la SGA para los procesos background.
No necesita recuperacion al arrancar la base de datos


SQLPLUS> connect sys as sysdba

connected

SQLPLUS> shutdown normal


2. Shutdown immediate


Espera a que las transacciones actuales se completen
Evita nuevas transacciones y nuevas conexiones. Los usuarios que intentan conectarse o los que ya están conectados al intentar realizar una nueva transacción reciben el mensaje "Shutdown in progress".
El proceso PMON finaliza las sesiones no activas y realiza ROLLBACK de aquellas transacciones que no estén validadas.
Cierra y desmonta la B.D. Cierra la SGA para los procesos background.
No necesita recuperacion al arrancar la base de datos


SQLPLUS> connect sys as sysdba

connected

SQLPLUS> shutdown immediate


3. Shutdown abort


Parada drástica, no espera a que los usuarios conectados actualmente finalicen sus transacciones. El usuario conectado recibe el mensaje "No logged on".
No se realiza ROLLBACK de las transacciones pendientes.
El proceso PMON finaliza las sesiones no activas y realiza ROLLBACK de aquellas transacciones que no estén validadas.
SI necesita recuperacion al arrancar la base de datos


SQLPLUS> connect sys as sysdba

connected

SQLPLUS> shutdown abort

5 comentarios:

Anónimo dijo...

HOLA, MUY BUENO EL BLOG.
SI QUERES ENTRA A MI PAGINA PARA HACER UN COMENTAIO.

SALUDOS

Anónimo dijo...

hola, muy bueno tu blog,si queres entra a mi pagina , a poner un comentario.

un abrazo

Anónimo dijo...

hola, gracias po tu informacion,si queres , entra a mi pagina , a poner un comentario.

un saludo

Anónimo dijo...

hola,excelente blog

Anónimo dijo...

hola,tu blog es excelente, ingresa a mi pagina web, a publicar un comentario. saludos