prucommercialre.com


Cómo solucionar problemas con tu base de datos Oracle Registros 12c

Usted necesita para sumergirse en el 12c Oracle registra a sí mismos. Cada base de datos tiene un conjunto de directorios donde se almacenan de registro, 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 gestión del archivo de registro de Oracle se conocen como el Repositorio de Diagnóstico Automático (ADR). ADR ofrece estas capacidades de gestión de registros:

  • De gestión de registros integrada no sólo por 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.
  • Registro de eventos en términos de incidentes con los datos de diagnóstico incluido y se almacenan en archivos zip que pueden ser revisados ​​y enviados a Oracle Support. La idea es repartir 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 rastreo. 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 de 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 SID de base de datos.

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 de la base de datos dev12c:

$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c
alertar hm incpkg lck metadatos metadata_pv barrido
cdump incidente ir ingrese metadata_dgif rastro etapa

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

Usted ve esta misma información cuidadosamente almacenado dentro de 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
----------- ---------------------------------
Diag Habilitado TRUE
ADR Base / u01 / app / oracle
ADR Inicio / u01 / app / oracle / diag / RDBMS / dev12c / dev12c
Diag Rastro / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / trace
Alerta Diag / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / alerta
Diag Incidentes / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / incidente
Diag Cdump / u01 / app / oracle / diag / RDBMS / dev12c / dev12cl / cdump
Health Monitor / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / hm
Por defecto del archivo de rastreo
/u01/app/oracle/diag/rdbms/dev12c/dev12c/trace/dev12c_ora_23293.trc
Conde Problema Activo 0
Conde Activo Incidentes 0
11 filas seleccionadas.

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

Directorio Propósito
alerta Tiendas muy importante registro de alertas con formato XML para la base de datos
cdump Ubicación volcado de memoria de pila de memoria cuando falla un proceso
incidente Los subdirectorios relativos a eventos individuales o incidentes
rastro Traza y volcar archivos para procesos en segundo plano y los usuarios; también contiene texto con formato de registro de alertas
Este es un listado de cada directorio:

$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c
alertar hm incpkg lck metadatos metadata_pv barrido
cdump incidente ir ingrese metadata_dgif rastro etapa
oralinux1> ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / alerta
log.xml
$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / cdump
$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / incidente
$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / trace
alert_dev12c.log dev12c_m000_23037.trc dev12c_ora_6593.trm
dev12c_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 rastro, 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 fallido proceso de asignación de memoria o no), los archivos de registro para ese evento se escriben en el directorio de rastreo.

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

$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12c / trace
alert_dev12c.log dev12c_m000_23037.trc dev12c_ora_6593.trm
dev12c_aqpc_24310.trc dev12c_m000_23037.trm dev12c_ora_760.trc

Estos son los contenidos de un archivo de depuración:

Archivo de rastreo /u01/app/oracle/diag/rdbms/dev12c/dev12c/trace/dev12c_dbw0_24263.trc
Oracle Database Enterprise Edition 12c Release 12.1.0.1.0 - 64bit Producción
Con la división, OLAP, de Analítica Avanzada y Real Application Testing optan
iones
ORACLE_HOME = /u01/app/oracle/product/12.1.0
Nombre del sistema: Linux
Nombre de nodo: oralinux1
Comunicado: 2.6.39-400.17.2.el6uek.x86_64
Versión: # 1 SMP Wed 13 de marzo 12:31:05 PDT 2013
Máquina: x86_64
Nombre de la instancia: dev12c
Rehacer hilo montado por esta instancia: 0 <ninguno>
Oracle número de proceso: 11
Unix proceso pid: 24263, imagen: oracle @ oralinux1 (DBW0)
*** 07/19/2013 13: 21: 21,458
*** ID CLIENTE :() 07/19/2013 13: 21: 21,458
*** NOMBRE SERVICIO :() 07/19/2013 13: 21: 21,458
*** NOMBRE MÓDULO :() 19/07/2013 13: 21: 21,458
*** NOMBRE ACCIÓN :() 19/07/2013 13: 21: 21,458
07/19/2013 13: 21: 21.458540: kjcipctxinit (): (pid | PSN) = (11 | 1): inicializado y
vinculado pctX 0x125d93038 en la lista de procesos

La diferencia entre un basurero y un archivo de rastreo: Un rastro es un registro continuo de un evento de problema. El vertedero es la descarga de información en un archivo para un evento de problema de una sola vez. Como administrador de base de datos (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 éstas son "manos libres" para un DBA para revisar, 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 de 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 = 21165))
* 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 = (PROGRAMA = C:? \ Archivos de programa \ Quest Software \ SAPO \ TOAD.exe)
(HOST = LPT-MPYLE) (USER = mpyle))) * (DIRECCIÓN = (PROTOCOLO = TCP)
(HOST = 192.168.2.170) (PORT = 3108))
* Establecer * 192.168.2.121 * 12514

Finalmente, se produce un error es:

TNS-12514: TNS: escucha actualmente no sabe de servicio
solicitado en el descriptor de conexión

Usted puede buscar el código de error de transporte de red de sustrato (TNS) 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 alertas, el registro del oyente puede aumentar de tamaño.