Cómo solucionar problemas con los registros de base de datos 12c oráculo

Usted necesita para sumergirse en el 12c Oracle registra a sí mismos. Cada base de datos tiene un conjunto de directorios donde se almacenan los registros, vestigios y archivos clave de volcado.

Infraestructura de registro de base de datos en Oracle 12c

El uso de archivos de registro para diagnosticar un problema es a menudo una tarea diaria para el DBA por lo que conocer cómo Oracle gestiona este recurso crítico es importante. Estructura y la gestión del archivo de registro Oracle se conocen como la Repositorio de diagnóstico automático (ADR). ADR ofrece estas capacidades de gestión de registros:

  • Gestión de registros integrada no sólo para la base de datos, pero otros productos de Oracle. Actualmente, Automatic Storage Management y el oyente también escriben a la nueva infraestructura de registro.

  • El registro de eventos en términos de incidentes con los datos de diagnóstico incluidos y se almacenan en archivos zip que pueden ser revisados ​​y enviados a Oracle Support. La idea es compartimentar mejor los eventos de error y pulcramente empaquetarlos para que puedan ser enviados directamente a Oracle Support.

  • Control de inundaciones de Incidentes para limitar de forma inteligente la creación y el tamaño de los archivos de seguimiento. Si un evento se repite a un ritmo extremo por encima de un umbral definido, sólo la ocurrencia del evento se registra.

Es importante saber dónde se encuentran los archivos de diagnóstico clave:

  • La ubicación de los subdirectorios de diagnóstico (diag) es la ADR_BASE y es típicamente bajo la ORACLE_BASE.

  • La ubicación de la base para los subdirectorios de registro es la ADR_HOME y se define por el parámetro de base de datos DIAGNOSTIC_DEST.

  • El ADR_HOME está por debajo de la ubicación ADR_BASE y está bajo el directorio de la base de datos SID.

La estructura para ADR_HOME para bases de datos sigue:

$ ADR_BASE NOMBRE / diag / RDBMS / BASE DE DATOS / BASE DE DATOS SID

Por ejemplo, aquí está la siguiente estructura para la base de datos dev12c:

$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12calert hmincpkg lck metadatametadata_pv sweepcdump incidente registro ir metadata_dgif stagetrace

La ubicación ADR_HOME es la ruta completa hasta e incluyendo la segunda referencia a dev12c.

Usted ve esta misma información cuidadosamente almacenada en la base de datos y se puede consultar a través de V $ DIAG_INFO:

SQL> select nombre, el valor de v $ diag_info-NOMBRE VALOR ----------- -------------------------- ------- TRUEADR Base Diag Habilitado / u01 / app / oracleADR Inicio / u01 / app / oracle / diag / RDBMS / dev12c / dev12cDiag Rastro / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / Alerta traceDiag / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / alertDiag Incidentes / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / incidentDiag Cdump / u01 / app / oracle / diag / RDBMS / dev12c / dev12cl / cdumpHealth monitor / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / hmDefault Traza Archivo / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / trace / dev12c_ora_23293.trcActive Problema Conde 0Active Incidentes Count 011 filas seleccionadas.

Dentro de cada directorio de la base de datos son subdirectorios donde se almacenan archivos diferentes. Aquí está cada directorio principal y su propósito.

DirectorioPropósito
alertaTiendas muy importante registro de alertas con formato XML para la base de datos
cdumpUbicación volcado de memoria de pila de memoria cuando falla un proceso
incidenteLos subdirectorios relativos a eventos individuales o incidentes
rastroTraza y volcar los archivos para el fondo y de usuario alsocontains procesos- texto con formato de registro de alerta
Esta es una lista de cada directorio:
$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12calert hmincpkg lck metadatametadata_pv sweepcdump incidente ir ingrese metadata_dgif stagetraceoralinux1> ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / alertlog.xml $ ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / cdump $ ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / incidentes $ ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / tracealert_dev12c.logdev12c_m000_23037.trc dev12c_ora_6593.trmdev12c_aqpc_24310.trc dev12c_m000_23037.trm dev12c_ora_760.trc

Estos directorios pueden conseguir lleno de muchos archivos y comer espacio en disco.

Contar con un proceso para limpiar los directorios traza, cdump, e incidentes para que no llenan el disco y son más fáciles de manejar.

Traza y volcar archivos en Oracle 12c

Cuando se produce un evento de problema (como un proceso fracasado o asignación de memoria no), los archivos de registro para ese evento se escriben en la rastrear directorio.

El formato para el nombre del archivo de registro es SID_process name_process ID.trc:

$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / tracealert_dev12c.logdev12c_m000_23037.trc dev12c_ora_6593.trmdev12c_aqpc_24310.trc dev12c_m000_23037.trm dev12c_ora_760.trc

Estos son los contenidos de un archivo de rastreo:

Archivo de rastreo 12c base de datos /u01/app/oracle/diag/rdbms/dev12c/dev12c/trace/dev12c_dbw0_24263.trcOracle Enterprise Edition Release 12.1.0.1.0 - 64bit ProductionWith la creación de particiones, OLAP, de Analítica Avanzada y Pruebas Real Application optionsORACLE_HOME = / u01 /app/oracle/product/12.1.0System nombre: Nombre LinuxNode: oralinux1Release: 2.6.39-400.17.2.el6uek.x86_64Version: # 1 SMP Wed 13 de marzo 12:31:05 PDT 2013Machine: nombre x86_64Instance: hilo dev12cRedo montado por esta instancia: 0 Oracle número de proceso: 11Unix pid proceso: 24.263, imagen: oracle @ oralinux1 (DBW0) *** 07/19/2013 13: 21: 21,458 *** Identificación CLIENTE :() 07/19/2013 13: 21: 21,458 * ** NOMBRE SERVICIO :() 07/19/2013 13: 21: 21,458 *** NOMBRE MÓDULO :() 07/19/2013 13: 21: 21,458 *** NOMBRE ACCIÓN :() 07/19/2013 13: 21: 21.4582013-07-19 13: 21: 21.458540: kjcipctxinit (): (pid | PSN) = (11 | 1): inicializado pctX andlinked 0x125d93038 en lista de procesos

La diferencia entre un basurero y un archivo de rastreo: A rastro es un registro continuo de un evento de problema. los vertedero es la descarga de información en un archivo para un evento de un problema de una sola vez. Como Database Administrator (DBA), debe revisar estos archivos de texto para diagnosticar lo que está ocurriendo.

Si un proceso se bloquea, un volcado de memoria se puede crear en el directorio cdump. Este es un archivo de rastreo binario del proceso de la memoria y su contenido en el momento del accidente. Aunque muchas personas consideran que estos son " de no intervención " para un DBA para opinar, que no es necesariamente el caso.

El comando cuerdas Linux y UNIX puede mostrar el texto imprimible de un archivo binario. Si opta por cargar el archivo central para cualquier organización de apoyo, es posible que desee revisarlo primero de usuario y contraseña combinaciones, ya que a veces están presentes en texto claro en estos archivos.

Registro Listener en Oracle 12c

Puede que tenga que realizar un seguimiento de las conexiones a la base de datos a través de la escucha. Cada vez que una conexión con la base de datos se produce, ese evento (o fracaso) se almacena en el registro oyente.

Saber dónde se generan los registros de oyente es importante para la solución de problemas. Usted puede encontrar el registro de escucha bajo el árbol de directorios ADR_BASE / diag / tnslsnr. (En este ejemplo, es /u01/app/oracle/diag/tnslsnr/oralinux1/listener/trace/listener.log.)

Aquí hay una entrada de registro de ejemplo:

02-AUG-2013 17:38:48 * (CONNECT_DATA = (SERVICE_NAME = dev12c) (CID = (PROGRAMA = sqlplus) (HOST = oralinux1) (USER = oráculo))) * (DIRECCIÓN = (PROTOCOLO = TCP) (HOST = 192.168.2.121) (PORT = 21.165)) * * establecer dev12c * 0

La información clave es el tiempo, el anfitrión, y el programa para las conexiones entrantes.

Aquí está un usuario utilidad de software SAPO Dell conexión, muy probablemente de estación de trabajo de un usuario:

02-AUG-2013 11:57:45 * (CONNECT_DATA=(SERVICE_NAME=192.168.2.121)(CID=(PROGRAM=C:Program?FilesQuest?SoftwareTOADTOAD.exe)(HOST=LPT-MPYLE)(USER=mpyle))) * (DIRECCIÓN = (PROTOCOLO = TCP) (HOST = 192.168.2.170) (PORT = 3108)) * * establecer 192.168.2.121 * 12514

Por último, se produce un error es:

TNS-12514: TNS: oyente no sabe actualmente de servicerequested en el descriptor de conexión

Usted puede buscar la Red de Transporte Substrato (TNS) código de error en el registro de oyente para ver qué errores se están produciendo. Esta búsqueda es útil, ya que habrá (esperemos) ser mucho más conexiones que los errores y, como los registros de alerta, el registro del oyente puede crecer grande.




» » » Cómo solucionar problemas con los registros de base de datos 12c oráculo