5.1 – DESCRIPCION DE LA ETAPAS DE INICIO Y APAGADO DE UNA BASE DE DATOS.
SECUENCIA DE INICIO RECOMENDADA POR ORACLE
- Database control - Enterprise Manager EM.
- Database Listener – Listener.
- Database – BD.
INICIANDO EL DATABASE CONTROL ENTERPRISE MANAGER
Es una herramienta para la gestión de base de datos. Si hay varias bases de datos corriendo en el mismo server cada base tendrá su propio Database Control. Toda la comunicación con Database Control se realiza atreves de https.
La configuración del Database Control se realiza al momento de la instalación. En la configuración esta incluye dos puntos vitales: el nombre del host y el puerto por donde escucha. Para iniciar el Database Control utilice la herramienta emctl que se encuentra en oracle_home/bin
emctl start dbconsole Inicia
emctl stop dbconsole Detiene.
emctl status dbconsole Status.
PARA ESTO SE DEBE CONFIGURAR LAS VARIABLES DE ENTORNO.
- Path. Es necesaria para que el sistema operativo encuentre la aplicación emctl. La cual está en oracle_home/sid
- Oracle_Home. Es para que emctl pueda encontrar la configuración del Database control.
- Oracle_sid. Es para que emctl pueda encontrar la configuración del database control.
El directorio oracle_home/sysman/config tiene directivas de configuración general que se aplican a todas las instancias de control.
El directorio oracle_home/hostname_sid/sysman/config y un directorio de nombre similar.
Para conectar al Database Control escriba lo siguiente.
https://localhost:puerto/em
Para ver la configuración del puerto será necesario revisar oracle_home/install/portlist.ini
El mecanismo para la gestión de certificados y https variara en función de su navegador y como este configurado. El certificado realmente no importa, no necesita conexiones seguras para la autentificación, solo para el cifrado.
INICIANDO EL LISTENER
El Listener es un proceso que controla un puerto para la conexión de solicitudes a base de datos. Estas solicitudes son manejadas por oracle net.
Hay tres formas de iniciar la escucha de la base de datos.
- lsnrctl.
- emctl.
- Servicio de Windows.
La utilidad Listener se encuentra en oracle_home/bin. El nombre del Listener por default es Listener.
- lsnrctl start
- lsnrctl status
- lsnrctl stop
INICIANDO SQL PLUS
Es una herramienta cliente servidor para conectarse a la base de datos y escribir secuencias de comandos.
Este se invoca desde la línea de comando como sqlplus y en versiones Windows se crea un icono.
Oracle_home/bin
Sqlplus /nolog
INICIO Y PARADA DE LA BASE DE DATOS
CONECTANDOSE CON PRIVILEGIOS APROPIADOS.
Usuarios ordinarios no pueden iniciar y parar la base de datos. Esto se debe a que los usuarios se autentifican contra un diccionario de datos.
Es imposible que un usuario normal pueda detener ya que los datos se pueden leer hasta que el diccionario de datos sea abierto.
Usted se puede autentificar como usuario de sistema operativo si pertenece al grupo con el que fue instalado el software de oracle o mediante
Usuario / password.
connect user/password@instancia
connect user/password@instancia as sysdba
connect user/password@instancia as sysoper
connect / as sysdba
connect / as sysoper
Oracle va a valida el nombre de usuario/contraseña; a combinación con los valores almacenados en el directorio de datos.
SYSOPER Y SYSDBA
Estos son los privilegios o capacidades especiales. Que solo pude ser activado cuando los usuarios se conectan con un método de autentificación externa
sysoper tiene la capacidad de emitir estos comandos.
- startup
- shutdown
- alter database [ mount | open | close | dismount ]
- alter [ database | tablespace ] [ begin | end ] backup
- recover
El privilegio sysdba incluye todo estos, pero edamas tiene la capacidad de crear una base de datos y hacer un recovery asi como crear otros sysoper y sysdba.
sysdba y sysoper no son usuarios son privilegios, de forma predeterminada, solo el usuario sys tiene estos privilegios hasta que se conceden a otros usuarios.
Mostrar el usuario que está actualmente conectado.
show user;
sys es el usuario más poderoso y titular del diccionario de datos.
El uso del privilegio sysoper conecta como un usuario público.
Publico no es un usuario es un usuario con privilegios de administración.
STARTUP: NOMOUNT, MOUNT Y OPEN
Recuerde que la instancia y la bd son entidades separadas. Puede existir independientemente uno de otro.
EL INICIO POR ETAPAS
1 - Primero la construcción de la instancia en memoria.
2 - Segundo habilitar una conexión a la base de datos por montaje de esta.
3 - Tercero abrir la base de datos para su uso.
En cualquier momento una base de datos estará en cualquiera de estos estados.
- shutdown.
- nomount.
- mount.
- open.
- shutdown. Cuando la base de datos está cerrada y la instancia no existe.
- nomount. La instancia se ha construido en la memoria sga se han creados los procesos de fondo de acuerdo a lo especificado en el archivo de parámetros.
Pero no se ha establecido la conexión a la base de datos. De hecho es posible que la base de datos no exista.
- mount. La instancia localiza y lee los control files de la base de datos.
- open. Todos los archivos de base de datos son localizados y abiertos y la base de datos está disponible para usuarios finales.
Por ejemplo. Si el archivo de control está dañado, o una copia de multiplicación falta. Usted no será capaz de montar la base de datos.
Pero deteniendo en modo nomount puede ser capaz de reparar el daÑo.
Del mismo modo. Si hay problemas con archivos de datos o redo logs puede ser capaz de reparar en modo mount antes de abrir open la base de datos.
En cada etapa la instancia debe encontrar los archivos que necesita y exactamente lo que sucede. Inicie con nomount.
Cuando se emite un comando de inicio para localizar un archivo de parámetros hay tres nombres de archivos por defecto.
Unix.
$oracle_home/dbs/spfilesid.ora
$oracle_home/dbs/spfile.ora
$oracle_home/dbs/initsid.ora
Window
$oracle_home/database/spfilesid.ora
$oracle_home/database/spfile.ora
$oracle_home/database/initsid.ora
spfileSID.ora es sin duda el archivo más conveniente utilizar como parámetro archivo. Normalmente, sólo se utilizará spfile.ora en un entorno RAC, donde un archivo puede ser usado para ejecutar varias instancias. Sólo se utilizará un archivo initSID.ora si por alguna razón, tiene que realizar manualmente las modificaciones; spfiles son archivos binarios y no puede ser modificado manualmente.
En todos los casos, SID se refiere al nombre de la instancia que el archivo de parámetros se de inicio. El orden anterior es importante! Oracle trabajará su camino hacia abajo la lista, usando el primer archivo que encuentra e ignorando el resto. Si ninguno de ellos existe, la instancia no se de inicio. Los archivos sólo se utiliza en modo de nomount son el archivo de parámetros y alertar a la registro. Los parámetros en el archivo de parámetros se utilizan para construir el SGA en la memoria y iniciar los procesos de fondo. Las entradas serán escrito en el registro de alerta que describe este proceso. ¿Dónde está el registro de alerta? En el lugar determinado por el BACKGROUND_ DUMP_DEST parámetro, que se pueden encontrar en el archivo de parámetros o ejecutando
Los archivos solo se utilizan en modo nomount son el archivo de parámetros y la descripción del registro. Estos se utilizan para construir los procesos en la sga e iniciar los procesos de fondo.
Las entradas se escriben en el registro de altertas donde se encuentra en spfile background_dump_dest o ejecutando lo siguiente.
show parameter background
--- pfile background_dump_dest en archivos tracer
Un archivo init es conocido como un archivo de parámetros estático o un pfile. Porque solo se lee una vez al inicia de la instancia.
Un spfile es conocido como un archivo de parámetros dinámico ya que oracle lee y actualiza continuamente durante la ejecución de la instancia.
Nota. En los archivos tracer que se encuentran en show parameter background se encuentra información donde se inicia la base donde se inicia la memoria sga.
Esta información también la obtenemos con background_dump_dest este parámetro se encuentra en background_dump_dest.
Una vez que una instancia ha sido iniciada en modo nomount, se pude realizar la transición a la modalidad mount y leer los archivos controlfiles.
Los archivos controlfile se localizan por medio de los parámetros control_files del archivo de parámetros.
Si los control files estan dañados o cualquier copia multiplexada la base de datos no se montara y tendrá que tomar medidas adecuadas.
Todas las copias de los controlfile deben de ser identicas para que el montado sea exitoso.
Como parte del proceso de mount. El nombre y localización de los datafiles y online redo logs son leídos desde el archivo de control pero Oracle todavía no trata de encontrarlos.
Si durante la transición a modo open. Si los archivos no están presentes o dañado, la base de datos se mantendrá en modo mount y no se puede abrir hasta se tomen medidas.
Además, incluso si todos los archivos están presentes deben ser sincronizados antes de abrir la base.
Si el ultimo cierre fue ordenado todos los database buffers dentro del database buffer se escriben en el disco por dbwn entonces se sincronizaran.
Oracle sabe que todas las transacciones commit son almacenadas seguramente en los datafiles y las transacción no commit son regresadas roll back.
Sin embargo si el ultimo cierre fue desordenado como apagón o el servidor se reinicia entonces oracle debe reparar el daño y es considerado como estado incoherente.
El proceso que se monta y se abre la base lo lleva a cabo el proceso smon. Solo una vez que sea abierto la base oracle otorga permiso para que se conecten usuarios.
El apagado debe ser el reverso de un startup. Durante un apagado ordenado. La base de datos es primeramente cerrada, después desmontada y final detenido de la instancia.
Durante la fase de cerrado, todas la sesión se terminan, operaciones activas se deshacen y transacciones completadas se escriben en el disco por dbwn y los archivos de datos
Y redo logs son cerrados.
Durante el desmount. Se cierran los controlfiles. La instancia es detenida y liberada la memoria sga y terminación de los procesos background.
Si alguien en medio de una actualización o por ejemplo estaban cargando información cuando está cerrando la base la fase de rollback entonces la base de datos se tardara en cerrar ya que limpiara esa actualización la regresara.
SHUTDOWN: NORMAL, IMMEDIATE, TRANSACTIONAL AND ABORT
Estas opciones pueden ser usadas por sysdba y sysoper.
shutdown [ normal | transactional | immediate | abort ]
Típicamente un apagado normal es inútil, siempre hay alguien conectado, incluso si es solo el enterprise manager.
- transactional. No son permitidas nuevas transacciones. Sesiones existentes que no están en transacción se terminan. Sesiones que están transaccionando se esperan a que terminen y luego se terminan. Hasta que todas las sessiones terminen de transaccionar se pagara la base.
- immediate. No se permiten nuevas transacciones. Y los actuales se terminan. Cualquier transacción activa se hace roll back y la base se cierra.
- abort. En lo que respecta a oracle, esto es equivalente a un corte de energía. La instancia termina inmediatamente. Nada es escrito en disco. Y no hay ningún intento de poner fin a las transacciones que puedan estar en curso.
Un shutdown abort no dañara la base de datos. Pero algunas operaciones no son recomendables después de un abort. Tales como copias de seguridad.
Los modos de apagado normal, immediate, transactional suelen llamarse como consistentes limpieza u ordenadas.
Después que todas las sessiones son terminadas pmon revertirá todas las transacciones incompletas. Entonces el este punto se forza al dbwn a escribir en el disco todos del buffer database.
Lgwr tambien vuelca los vectors de la memoria en los log files a continuación los encabezados de archivo se actualiza y los identificadores de archivo cerrados.
El modo abort se denomina en cierre desordenada deja la base de datos en modo incoherente, es muy posible que las transacciones confirmadas se han perdido porque solo existían en la memoria y dbwn aun no habia escrito los datos en archivos.
Igualmente puede haber comprometido las operaciones de los archivos de datos que todavía no se han revertido.
Hay un comando startup que es startup force este puede ahorrar tiempo. Estos son dos comandos en uno: un shutdown abort seguido de un startup.
Un cierre ordenado es un proceso gradual y en teoría es posible controlar las etapas.
Alter database close;
Alter database dismount;
Alter database dismount;
Estos comandos son exactamente el inverso de una secuencia de inicio. En la práctica sin embargo no hay ningún valor para ellos, un dba nunca los utilizara.
EJERCICIO
Realizar un startup y un shutdown.
Realizar un startup y un shutdown.
1.- Inicie una sesión de oracle.
2.- Verifique el estado de los listener y si es necesario inícielos.
3.- Verifique el estado del Enterprise Manager.
4.- Login a slqplus como /nolog.
5.- Conéctese como sys.
6.- Inicie solo la instancia.
7.- Monte la base de datos.
8.- Abrir la base de datos.
9.- Confirme que la base de datos está abierta con el siguiente query.
select count(*) from dba_data_files;
10.- Conectese al enterprise manager con sys.
11.- Apague la base desde Enterprise Manager.
RESUMEN
GESTION DE LA INSTANCIA DE ORACLE
GESTION DE LA INSTANCIA DE ORACLE
La instancia abre una base de datos. Pero son diferentes cosas. La instancia solo lee el archivo de parámetros para construir en memoria. A continuación se monta la base de datos mediante la lectura de los archivos controlfiles.
Cuya ubicación se especifica por un parámetro. Los controlfile tiene punteros a el resto de la base de datos.
Cuando se inicia una base de datos en etapas. El modo nomount requiere solo del archivo de parametros.
El modo mount requiere de los archivos controlfiles y el modo open requiere de los datafiles y online redo log.
La instancia y el archivo controlfile puede ser interrogado a traves en mount y no mount. En modo open el diccionario de datos puede ser interrogado.
No hay comentarios:
Publicar un comentario