• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Arranque y parada de la base de datos. Ficheros de traza
 

Arranque y parada de la base de datos. Ficheros de traza

on

  • 2,756 views

Documentación sobre el proyecto de arranque y parada de una base de datos; así como el uso y compresión de los trace files.

Documentación sobre el proyecto de arranque y parada de una base de datos; así como el uso y compresión de los trace files.

Statistics

Views

Total Views
2,756
Views on SlideShare
2,755
Embed Views
1

Actions

Likes
0
Downloads
59
Comments
0

1 Embed 1

http://www.slideshare.net 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Arranque y parada de la base de datos. Ficheros de traza Arranque y parada de la base de datos. Ficheros de traza Document Transcript

    • Administración avanzada OracleArranque y parada de la base de datos. Ficheros de traza. Jesús Miguel Muñoz Rodríguez SGBD Administración avanzada de OracleJesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 1
    • Administración avanzada Oracle ARRANQUE Y PARADA DE LA BASE DE DATOS. FICHEROS DE TRAZA. Esta guía pretende arrojar información profunda de como se arranca y para una base dedatos; que tipos de estado tiene una base de datos y para que sirve cada uno de ellos; y qué son losficheros de traza y para que están destinados. Comencemos:ARRANQUE Y PARADA DE UNA BASE DE DATOS:Introducción: Una base de datos en Oracle no estará completamente operativa hasta que el administradorinicie la instancia y abra la base de datos. El comando que abre la base de datos es el comando STARTUP. Este comando realiza 3procesos en los cuales la base de datos va cambiando de estado hasta que llega al punto de abrirse.Los procesos son: • Arranca la instancia. Construye las estructuras de memoria. La base de datos se encuentra en estado NOMOUNT. • Monta la base de datos. Para ello y con la información del fichero CONTROLFILE, lee los ficheros físicos asociados y comprueba que existen. La base de datos pasa ha estar en estado MOUNT. • Se abre la base de datos. Se abren los ficheros. La base de datos pasa ha estado OPEN. Nuestra base de datos está arrancada de forma correcta y con todas las características. El comando que cierra la base de datos es el comando SHUTDOWN, el cuál realiza losmismos pasos que el comando STARTUP pero al contrario, hasta que finalmente cierra la base dedatos. En cuanto al arranque y parada de la base de datos hay que hacer mención especial a losprivilegios que serán dados a los usuarios. El DBA ha de analizar de forma exhaustiva que usuariostendrán el privilegio de conectarse a la base de datos y cuáles no. Vamos a ver todos estos proceso de forma profunda:El comando STARTUP: El comando STARTUP es el comando de arranque de la base de datos, y tiene la siguientesintaxis: STARTUP [PFILE=’ARCHIVO_PARAMS’] [MODO] El ARCHIVO_PARAMS es un archivo de parámetros que contiene una serie de valores quese utilizarán para poner en funcionamiento una instancia de la base de datos. Este archivo sedenominaba initsid.ora en las versiones anteriores a la 9i, en las posteriores se denomina SPFILE.Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 2
    • Administración avanzada OracleEste archivo la analizaremos de una manera más profunda más adelante. En caso de que la base de datos ya esté ejecutándose y queramos pasar a otro estadopodemos usar el siguiente comando: ALTER DATABASE MODO; El MODO es el modo de arranque que se le puede indicar para que la base de datos pase aun estado u otro, en función de las tareas que se quieran realizar. Los distintos modos sonNOMOUNT, MOUNT Y OPEN. Vamos a ver los tres modos de forma detallada:Modo NOMOUNT: En este estado arrancan los procesos de background y se construye la instancia. Este estado se emplea para deshabilitar procesos, modificar ficheros de la BD, y recrear elfichero de control. En caso de que queramos modificar algún fichero de la base de datos debido aque necesitamos por ejemplo si se quieren modificar los archivos de control o los de datos. Cuando estemos ejecutando este estado se pueden presentar algunos problemas: • Problemas de hardware. • Que no exista el fichero de inicialización que le hemos pasado. • Que algunos parámetros del fichero de inicialización estén mal. Si se nos da este problema podemos decirle que arranque con el fichero de inicio por defecto llamado init.ora escribiendo el comando STARTUP PFILE = INIT.ora NOMOUNT.Modo MOUNT: Analiza que los ficheros que le indica el parámetro CONTROLFILE en el archivo deparámetros, son los que los que se han puesto y que la ruta indicada sea la correcta. Este estado se usa en caso de que queramos hacer una copia de seguridad de la base dedatos. Como en el estado anterior, en modo MOUNT pueden aparecer algunos problemas como lossiguientes: • No exista el fichero de control. • Que existan ficheros no sincronizados (lo cual implicaría que se hiciera un recover). • No existan los ficheros de datos o de redo log que el CONTROLFILE debe leer. Si el fichero de datos que falta no es crítico, puedo arrancar sin él y después recuperarlo con un backup.Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 3
    • Administración avanzada OracleModo OPEN: Abre los ficheros. Es en este modo cuando podemos decir que la base de datos estácompletamente operativa. Cuando arrancamos este estado existe la posibilidad de arrancar una misma base de datoscon distintas instancias, indicando que fichero init.ora queremos que utilice.El comando SHUTDOWN: SHUTDOWN es el comando de parada de la base de datos y tienen la siguiente sintaxis: SHUTDOWN [MODO] El proceso de cierre de la base de datos se realiza al revés que el STARTUP realizando lossiguientes pasos: • Cierra los archivos y valida las transacciones. • Graba al fichero de control el estado de los ficheros. • Cierra la instancia y libera los recursos.Disponemos de cuatro opciones o modos diferentes para realizar el shutdown:Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 4
    • Administración avanzada Oracle • SHUTDOWN NORMAL: Espera a que todas las sesiones finalicen y después cierra la base de datos. • SHUTDOWN INMEDIATE: Hace rollback de las transacciones en curso y el sistema cierra todas las sesiones abiertas, marcando un checkpoint que evita inconsistencias. • SHUTDOWN ABORT: Cierra las sesiones, pero no cancela las transacciones. Requiere RECOVERY. • SHUTDOWN TRANSACCIONAL: Espera a que termine la transacción en curso. Lanza un timeout para transacciones largas.Archivo de parámetros: El archivo de parámetros es un archivo de texto que contiene valores y parámetros quedefinen cómo será la puesta en marcha de una instancia. Este fichero normalmente es el init.ora. Este fichero solo se lee durante el inicio de la instancia por lo que en caso de que se hagaalgún cambio en dicho fichero, habría que parar la instancia y volver a lanzadla para que loscambios tengan efecto. Existen algunos parámetros que son dinámicos, los cuales se ejecutan con lainstancia activa sin necesidad de reiniciarla. A partir de la versión de Oracle 9i aparece un nuevo tipo ficheros de parámetros llamadosSPFILE que se crean a partir del init.ora con el siguiente comando: Create SPFILE = ’nombre_spfile’ FROM PFILE = ’nombre_pfile(pj: init.ora)’ Cuando creamos un nuevo archivo SPFILE debemos de parar y arrancar de nuevo la base dedatos para que esta ya no lea el init.ora sino el nuevo spfile. A diferencia del init.ora este fichero no es un fichero editable. Para poder hacer algúncambio en el fichero hay que hacerlo con el siguiente comando: ALTER SYSTEM SET param = valor [SCOPE = MEMORY |SPFILE | BOTH]REGLAS PARA ESPECIFIACAR PARÁMETROS EN EL INIT.ORA • Los valores se especifican con el formato: parámetro = valor. • Todos los parámetros son opcionales. • El servidor tiene un valor por defecto para cada parámetro. • Se pueden especificar en cualquier orden. • Las líneas de comentario se especifican con # • Los literales de carácter se especifican entre comillas dobles. • Hay valores que se encierran entre paréntesis y se separan por comas. Para poder mostrar los valores de los parámetros especificados en el archivo de parámetrospodemos usar el siguiente comando: SHOW PARAMETER texto También se pueden usar vistas dinámicas para consultar dicha información. Las vistas encuestión serían: V$PARAMETER y V$SPPARAMETER.Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 5
    • Administración avanzada Oracle Algunos parámetros que se podrían aplicar al fichero de init.ora pueden ser: • DB_NAME: Nombre de la base de datos. Único parámetro obligatorio para el inicio de la base de datos. • CONTROL_FILES: Nombres de los archivos de control. • DB_BLOCK_SIZE: Tamaño de bloque de la base de datos. • BACKGROUND_DUMP_DEST: Ubicación para los archivos de rastreo de los procesos en segundo plano. Es también la ubicación del log de alerta. • USER_DUMP_DEST: Ubicación donde se crean los archivos de rastreo de depuración del usuario a favor de un proceso de usuario. • LOG_BUFFER: Número de bytes asignados al buffer de redo log en la SGA. • MAX_DUMP_FILE_SIZE: Tamaño máximo de los archivos de rastreo, especificado como el número de bloques del sistema operativo. • SQL_TRACE: Activa o desactiva la utilidad de rastreo SQL para cada sesión de usuario. • PROCESSES: Número máximo de procesos del sistema operativo que se pueden conectar simultáneamente a la instancia. • IFILE: Nombre de otro archivo de parámetros que se debe embeber en el archivo de parámetros. Se permite hasta tres niveles de anidamiento. • TIMED_STATISTICS: Activa o desactiva la temporización en los archivos de rastreo y en las pantallas del monitor. Los archivos de parámetros también pueden ser modificados desde la consola web deOracle. Accediendo al explorador de Internet que usemos y poniendo en la url:https://localhost:1158/em. Desde aquí podremos modificar a nuestro gusto todos y cada uno de losparámetros que existen en el fichero de parámetros:Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 6
    • Administración avanzada OracleLOS ARCHIVOS DE RASTREO (TRACE FILES) Cuando uno de los procesos en segundo plano detecta un error, genera un archivo de rastreocon información sobre dicho error. Cada proceso de servidor y en segundo plano puede escribir enun archivo de rastreo asociado. La ubicación de estos archivos de rastreo es el directorioespecificado en el parámetro de inicialización BACKGROUND_DUMP_DEST que se encuentra enel init.ora. Normalmente el nombre del archivo de rastreo contiene el nombre del proceso en segundoplano que lo creó para poder identificarlo y la extensión de estos archivos será TRC. También es importante que el administrador de la base de datos revise estos ficherosperiódicamente para comprobar si hay errores y depurarlos si fueran demasiado peligrosos. Para activar los ficheros de traza para la sesión actual usamos el siguiente comando: dbms_support.start_trace_in_session( sid=> 42, serial# => 1215, waits => true, binds => true) Este es un ejemplo de una linea de una archivo de traza: 2010-11-02 20:10:31.296: [ default]ut_read_reg:2:ocr registry key SOFTWAREOracleolrcannot be opened. Error 2Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 7
    • Administración avanzada Oracle Nos ofrece información sobre cuando se ha producido el error, donde ha sido, a que servicioestá asociado el error y qué código de error se ha generado.VISTA DBA_REGISTRY Muchas veces, además de conocer la versión exacta de la base de datos (a través deV$VERSION), es necesario saber los componentes instalados, así como su estado y versión.Desde la versión 9i existe la vista de diccionario de datos DBA_REGISTRY, que proporciona estainformación y más… (siempre a usuarios con los correspondientes privilegios). Veamos unejemplo:select substr(COMP_ID,1,10) COMP_ID, substr(COMP_NAME,1,30) COMP_NAME,VERSION, STATUS from DBA_REGISTRY;COMP_ID COMP_NAME VERSION STATUSEM Oracle Enterprise Manager 10.1.0.2.0 VALIDXDB Oracle XML Database 10.1.0.2.0 VALIDCONTEXT Oracle Text 10.1.0.2.0 VALIDORDIM Oracle interMedia 10.1.0.2.0 VALIDEXF Oracle Expression Filter 10.1.0.2.0 VALIDOWM Oracle Workspace Manager 10.1.0.2.0 VALIDCOMANDOS EMCA Y EMCTL La consola de administración web es una excelente herramienta para administrar nuestrabase de datos Oracle. Esta se haya controlada por los comandos emca (Enterprise ManagerConfiguration Assistant) y emctl (Enterprise Manager Command-Line Utility ). Ambos comandosson paquetes para la gestión de la consola web de oracle. El comando emctl inicia y para el servicio console de oracle. Para ello la variableORACLE_UNQNAME ha de estar contituida por el nombre de la instancia. Luego solo tenemos queinciar el servicio con emctl: set ORACLE_UNQNAME=orcl emctl start|stop dbconsole Para ver su funcionamiento vamos a ver un caso hipotético de fallo en la consola deadministración web: Tras una migración de nuestra base de datos nos damos cuenta que no funciona nuestraconsola de administración debido a que el nombre de host de la máquina ha cambiado. ¿Quépodríamos hacer para recuperar la consola?:Verificaciones y reconfiguraciones Debes cambiar el nombre del host dentro del archivo .bash_profile En general esta dentro dela variable ORACLE_HOSTNAME Debes verificar el contenido del archivo $ORACLE_HOME/tnsnames.ora y asegurarte deque esté el nuevo nombre de host.Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 8
    • Administración avanzada OracleReiniciar el host Reiniciar el host, y verificar que la base de datos haya arrancado. sqlplus usuario/password@instancia select sysdate from dual Si responde pues la base de datos esta levantada.Limpiar configuración Para desconfigurar completamente el enterprise manager emca -deconfig dbcontrol dbLimpiar y recrear el repositorio emca -deconfig dbcontrol db -repos drop emca -config dbcontrol db -repos createReconfigurar el enterprise manager Debes reconfigurar el enterprise manager con el comando emca -config dbcontrol dbEste comando te preguntara 1. Nombre de instancia 2. Puerta en la que escucha el listener 1521 3. Password de administrador de SYS,DBSNMP,SYSMAN 4. El mail y el smtp es opcional (no lo completes)Prueba de buen funcionamiento Si ha configurado correctamente el enterprise manager pues simplemente debe entrar al link https://nombredelhost:1158/em En caso de problemas fijate en los siguientes aspectosClave emkey.ora Si falta la clave emkey.ora obténgala desde un respaldo y póngala en la carpeta$ORACLE_HOME/nombredelainstancia/sysman/config. En caso que no tenga respaldo use el comando $ORACLE_HOME/bin/emca with -reposcreate option . Cópiela a la carpeta $ORACLE_HOME/sysman/config Luego ejecute el comando $ORACLE_HOME/bin/emctl config emkey -emkeyfile$ORACLE_HOME/sysman/config/emkey.ora -forcePassword insensitivos a la mayúscula y minúscula Para dejar los password compatibles con la versión Oracle 10g use los siguientes comandos: alter system set sec_case_sensitive_logon=false scope=both; show parameter sec_case_sensitive_logon;Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 9
    • Administración avanzada Oracle Tras esto tendremos de nuevo nuestra consola de administración funcionando,permitiéndonos un control de la administración de Oracle de forma eficiente y sencilla.Jesús Miguel Muñoz RodríguezArranque y parada de la Base de datos. Ficheros de traza. 10