Wie Sie mit Ihrem Oracle 12c Datenbankprotokolle zu beheben

Sie müssen tauchen Sie ein in die Oracle 12c sich anmeldet. Jede Datenbank verfügt über eine Reihe von Verzeichnissen, in denen Schlüssel Protokoll-, Trace- und Dump-Dateien gespeichert sind.

Datenbank-Log-Infrastruktur in Oracle 12c

Protokolldateien mit einem Problem zu diagnostizieren ist oft eine tägliche Aufgabe für den DBA so zu wissen, wie Oracle diese kritische Ressource verwaltet wichtig ist. Oracle-Log-Datei-Struktur und das Management werden als die genannten Automatische Diagnose-Repository (ADR). ADR bietet diese Log-Management-Funktionen:

  • Integrierte Log-Management nicht nur für die Datenbank, sondern auch andere Oracle-Produkte. Derzeit Automatic Storage Management und Zuhörer auch auf die neue Protokoll Infrastruktur schreiben.

  • Ereignisprotokollierung in Bezug auf die Vorfälle mit einbezogen Diagnosedaten und in ZIP-Dateien gespeichert, die Oracle Support überprüft und versendet werden können. Die Idee ist es, eine bessere Fehlerereignisse compartmentalize und sie ordentlich zu verpacken, so dass sie direkt an Oracle Support gesendet werden.

  • Incident-Hochwasserschutz auf intelligente Weise die Schöpfung und die Größe der Trace-Dateien begrenzen. Wenn ein Ereignis über einer definierten Schwelle bei einer extremen Geschwindigkeit wiederholt, nur das Auftreten des Ereignisses wird protokolliert.

Es ist wichtig zu wissen, wo die wichtigsten Diagnosedateien befinden sich:

  • Die Lage für die Diagnoseverzeichnisse (DIAG) ist die ADR_BASE und ist in der Regel unter dem ORACLE_BASE.

  • Die Lage der Basis für die Protokollverzeichnisse ist die ADR_HOME und wird von Datenbankparameter DIAGNOSTIC_DEST definiert.

  • Die ADR_HOME ist unter der ADR_BASE Lage und ist unter der Datenbank SID-Verzeichnis.

Die Struktur für ADR_HOME für Datenbanken folgt:

$ ADR_BASE / diag / RDBMS / DATABASE NAME / DATABASE SID

Zum Beispiel, hier ist die folgende Struktur für die dev12c Datenbank:

$ Ls ORACLE_BASE $ / diag / RDBMS / dev12c / dev12calert hmincpkg lck metadatametadata_pv sweepcdump Vorfall ir log metadata_dgif stagetrace

Die ADR_HOME Lage ist der vollständige Pfad bis einschließlich des zweiten Verweis auf dev12c.

Sie sehen die gleichen Informationen erhalten ordentlich in der Datenbank gespeichert und können über V $ DIAG_INFO abgefragt werden:

SQL> select Name, Wert von v $ diag_info-NAME VALUE ----------- -------------------------- ------- Diag Aktiviert TRUEADR Basis / u01 / app / oracleADR Home / u01 / app / oracle / diag / RDBMS / dev12c / dev12cDiag Trace / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / traceDiag Alarm / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / alertDiag Incident- / 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 Datei Trace / u01 / app / oracle / diag / RDBMS / dev12c / dev12c / trace / dev12c_ora_23293.trcActive Problem Count 0Active Vorfall 011 Zeilen Graf ausgewählt.

Innerhalb jedes Datenbankverzeichnis sind Verzeichnisse in denen verschiedene Dateien gespeichert sind. Hier ist jeder primäre Verzeichnis und seinen Zweck.

VerzeichnisZweck
aufmerksamStores sehr wichtig im XML-Format Alert-Protokoll für Datenbank
CDUMPCore-Dump-Stelle des Hauptspeichers, wenn ein Vorgang fehlschlägt
VorfallSubdirectories auf einzelne Ereignisse oder Vorfälle im Zusammenhang
SpurTrace und Dump-Dateien für den Hintergrund und Benutzer processes- alsocontains Text formatiert Alert-Protokoll
Dies ist eine Auflistung jedes Verzeichnisses:
$ Ls $ ORACLE_BASE / diag / RDBMS / dev12c / dev12calert hmincpkg lck metadatametadata_pv sweepcdump Vorfall ir log 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 / Vorfall $ 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

Diese Verzeichnisse können überladen mit vielen Dateien erhalten und Speicherplatz fressen.

Haben Sie einen Prozess der Spur, CDUMP, und Incident Verzeichnisse zu bereinigen, so dass sie Ihre Festplatte nicht ausfüllen und sind leichter zu verwalten.

Trace und Dump-Dateien in Oracle 12c

Wenn ein Problem Ereignis (wie zB ein fehlgeschlagenen Prozess oder ausgefallene Speicherzuweisung) auftritt, Protokolldateien für dieses Ereignis in die geschrieben Trace-Verzeichnis.

Das Format für die Protokolldateiname ist 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

Hier sind die Inhalte einer Trace-Datei:

Trace-Datei /u01/app/oracle/diag/rdbms/dev12c/dev12c/trace/dev12c_dbw0_24263.trcOracle Datenbank 12c Enterprise Edition Veröffentlichung 12.1.0.1.0 - 64bit ProductionWith die Partitionierung, OLAP, Advanced Analytics und Real Application Testing optionsORACLE_HOME = / u01 /app/oracle/product/12.1.0System Name: LinuxNode Name: oralinux1Release: 2.6.39-400.17.2.el6uek.x86_64Version: # 1 SMP Mi 13. März 00.31.05 PDT 2013Machine: x86_64Instance Name: dev12cRedo Gewinde befestigt durch diese Instanz: 0 Oracle-Prozessnummer: 11Unix Prozess pid: 24263, Bild: oracle @ oralinux1 (DBW0) *** 2013.07.19 13: 21: 21,458 *** Client-ID :() 2013.07.19 13: 21: 21,458 * ** Service-Name :() 2013.07.19 13: 21: 21,458 *** Modulname :() 2013.07.19 13: 21: 21,458 *** Aktion Name :() 2013.07.19 13: 21: 21.4582013-07-19 13: 21: 21,458540: kjcipctxinit (): (pid | psn) = (11 | 1): initialisiert andlinked pctx 0x125d93038 in Prozessliste

Der Unterschied zwischen einer Müllhalde und einer Trace-Datei: A Spur ist ein laufendes Protokoll eines Problems Ereignis. Das Müllhalde ist die einmalige von Informationen in eine Datei für ein Problem Ereignis Dumping. Als Datenbankadministrator (DBA), sollten Sie diese Textdateien überprüfen zu diagnostizieren, was auftritt.

Wenn ein Prozess abstürzt, kann ein Core-Dump im CDUMP Verzeichnis erstellt. Dies ist eine binäre Trace-Datei des Speicherprozesses und dessen Inhalt zum Zeitpunkt des Absturzes. Obwohl viele Menschen betrachten zu diesen sein # 147-hands-off # 148- für ein DBA zu überprüfen, ist das nicht unbedingt der Fall.

Die Linux- und UNIX-Strings-Befehl kann den druckbaren Text einer Binärdatei zeigen. Wenn Sie die Core-Datei zu jeder Support-Organisation zu laden entscheiden, können Sie es zuerst für Benutzername und Passwort-Kombinationen zu überprüfen, weil sie manchmal in Klartext in diesen Dateien sind.

Listener-Log in Oracle 12c

Sie müssen möglicherweise über den Hörer Verbindungen in die Datenbank zu verfolgen. Jedes Mal, wenn eine Verbindung zu der Datenbank erfolgt in der gespeichert sind, das Ereignis (oder Versagen) Hörer-Protokoll.

wo Zuhörer Protokolle zu kennen erzeugt ist wichtig, um die Fehlersuche. Sie können die Zuhörer Protokoll unter dem ADR_BASE / diag / tnslsnr Verzeichnisbaum finden. (In diesem Beispiel ist es /u01/app/oracle/diag/tnslsnr/oralinux1/listener/trace/listener.log.)

Hier ist ein Beispiel Protokolleintrag:

02-AUG-2013 17.38.48 * (CONNECT_DATA = (SERVICE_NAME = dev12c) (CID = (PROGRAM = sqlplus) (HOST = oralinux1) (USER = Oracle))) * (ADDRESS = (PROTOCOL = tcp) (HOST = 192.168.2.121) (PORT = 21165)) * herstellen * dev12c * 0

Die wichtigsten Informationen ist die Zeit, den Host und Programm für die eingehenden Verbindungen.

Hier ist ein Dell TOAD-Software-Dienstprogramm Benutzer verbindet, am ehesten von der Workstation eines Benutzers:

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))) * (ADDRESS = (PROTOCOL = tcp) (HOST = 192.168.2.170) (PORT = 3108)) * herstellen * 192.168.2.121 * 12514

Schließlich ist ein Fehler auftritt:

TNS-12514: TNS: Zuhörer wissen derzeit nicht von servicerequested in Verbindungsdeskriptor

Sie können für die Suche Transport Network Substrate (TNS) Fehlercode im Hörer Protokoll, um zu sehen, welche Fehler auftreten. Diese Suche ist nützlich, weil es (hoffentlich) weit mehr Verbindungen als Fehler und wie die Meldungsprotokolle sein, kann der Hörer log groß werden.

Menü