diag目录过大 oracle_/oracle/app/oracle/diag是什么目录 - CSDN
精华内容
参与话题
  • Oracle diag目录下面的大量trace trc文件

    万次阅读 2017-02-03 10:55:39
    Oracle tarce文件是oracle数据库在运行时产生的日志,该trace文件是可以删除的,对系统没有什么影响。 在删除前,先查看trace的参数配置  SQL> show parameter trace_en NAME TYPE VALUE -----------------...

    Oracle tarce文件是oracle数据库在运行时产生的日志,该trace文件是可以删除的,对系统没有什么影响。

    在删除前,先查看trace的参数配置

      SQL> show parameter trace_en
    NAME                                TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    trace_enabled                        boolean    TRUE
    SQL>

      通过find命令查找30天以前创建的文件,通过xargs管道和rm-rf命令,可以直接删除
    [oracle@HBCADB001 hbcadb1]$ find trace -ctime +30|more
    trace/hbcadb1_j000_25349.trc
    trace/hbcadb1_j000_28514.trm
    trace/hbcadb1_ora_12171.trm
    trace/hbcadb1_ora_4595.trm
    trace/hbcadb1_j000_3029.trm
    trace/hbcadb1_ora_14967.trm
    trace/hbcadb1_j000_2237.trm
    trace/hbcadb1_j000_13278.trc
    trace/hbcadb1_ora_13051.trm

      find trace -ctime +30 |xargs rm -f

    展开全文
  • show parameter trace sql_trace trace_enabled

    show parameter trace

    sql_trace

    trace_enabled

     

    展开全文
  • 监听日志过大处理指南

    千次阅读 2017-12-13 16:13:26
    随着Oracle数据库的运行,监听日志如果不处理会越来越,当日志大会影响监听进程的稳定,特别是windows平台,当日志大小达到4G,可能出现连接不正常。因此,建议定期对日志进行转储,由于监听进程会持有监听日志...
    

    随着Oracle数据库的运行,监听日志如果不处理会越来越大,当日志过大会影响监听进程的稳定,特别是windows平台,当日志大小达到4G,可能出现连接不正常。因此,建议定期对日志进行转储,由于监听进程会持有监听日志文件的句柄,因此,不建议直接清空或删除,需要采用临时关闭监听日志记录功能,然后转储,然后再打开的方式进行处理。以下将分别就windows和类Unix平台进行介绍。

    1        Windows环境

    1. 确认监听名称

    打开计算机管理->服务,然后找到监听对应的服务,示例如下:


    这里为了示例,特意建立了两个监听,服务名分别为:OracleOraDb11g_home1TNSListenerOracleOraDb11g_home1TNSListenerLISTENER1。默认的监听名称是LISTENER,当使用默认监听时,服务名在TNSListener后面为空,如果非默认监听名称,那么服务名后面会添加监听名称。这里就可以看到包含两个监听:LISTENERLISTENER1.除此之外,也可以通过%ORACLE_HOME%\network\admin\listener.ora文件确认监听名称。示例如下:



    2.确认监听日志位置


    确认了监听的名称,接下来就是确认监听日志的位置。通过安装ORACLE软件的用户在cmd中执行lsnrctl status 监听名称来获取位置



    Oracle监听日志有两种格式,一种是xml格式,一种是文本文件格式。xml格式的日志是10M一个,所以不存在单个文件过大的问题。因此我们需要关注的是文本文件格式的监听日志文件。监听状态输出中显示的是xml格式的文件位置,文本文件格式的日志文件所在的目录位于xml格式日志所在位置上层目录下的trace目录下,比如这里xml文件位于:C:\app\Administrator\diag\tnslsnr\WIN2008\listener\alert目录下,那么文本文件格式的日志就位于C:\app\Administrator\diag\tnslsnr\WIN2008\listener\trace下。我们这里对应的文件是:C:\app\Administrator\diag\tnslsnr\WIN2008\listener\trace\listener.log.如果该目录存在多个文件,只需要通过更新时间基本上就可以确定当前在使用的文件。

    3.停止监听日志记录功能


    停止记录监听日志,需要通过lsnrctl来进行设置,命令如下:


    lsnrctl

    set current_listener监听名称

    set log_status off

    exit


    以下是示例截图:



    4.转储文件


    转储文件可以切换到监听日志文件位置,直接重命名(如果确认不需要保留历史日志记录,可以删除)。



    5.重新打开监听日志记录功能


    重新打开日志记录功能,文件会自动生成。


    lsnrctl

    set current_listener监听名称

    set log_status on

    exit


    以下是示例截图:



    6.确认监听日志记录功能正常


    确认文件已生成。




    2  Unix环境


    1. 确认监听名称


    Unix环境包括AIXHP-UnixLinux等,该文档描述操作原则上适用这些平台。


    确认监听名称,可以通过进程进行确认,命令如下:


    ps -ef|grep lsnr|grep -v grep


    示例如下:




    这里可以看到该系统已grid用户启动了两个监听,名称分别是:LISTENERLISTENER_SCAN1.

    2.确认监听日志位置


    确认了监听的名称,接下来就是切换到启动监听的用户,确认监听日志的位置。通过启动监听的用户执行lsnrctlstatus监听名称来获取位置


    su - grid

    lsnrctl status LISTENER


    示例截图如下:


    Oracle监听日志有两种格式,一种是xml格式,一种是文本文件格式。xml格式的日志是10M一个,所以不存在单个文件过大的问题。因此我们需要关注的是文本文件格式的监听日志文件。监听状态输出中显示的是xml格式的文件位置,文本文件格式的日志文件所在的目录位于xml格式日志所在位置上层目录下的trace目录下,比如这里xml文件位于:/u01/app/grid_base/diag/tnslsnr/rac1/listener/alert目录下,那么文本文件格式的日志就位于/u01/app/grid_base/diag/tnslsnr/rac1/listener/trace下。我们这里对应的文件是:C:\app\Administrator\diag\tnslsnr\WIN2008\listener\trace\listener.log.如果该目录存在多个文件,只需要通过更新时间基本上就可以确定当前在使用的文件。

     

    3.停止监听日志记录功能


    停止记录监听日志,需要通过lsnrctl来进行设置,命令如下:


    lsnrctl

    set current_listener监听名称

    set log_status off

    exit


    以下是示例截图:



    4.转储文件


    转储文件可以切换到监听日志文件位置,直接重命名(如果确认不需要保留历史日志记录,可以删除)。



    5.重新打开监听日志记录功能


    重新打开日志记录功能,文件会自动生成。


    lsnrctl

    set current_listener监听名称

    set log_status on

    exit


    以下是示例截图:



    6.确认监听日志记录功能正常


    确认文件已生成。

    展开全文
  • 现在,对于我来说,处理ORACLE告警日志alert多不再是什么难题;但是,由于数据库是公司最重要的设备,不容有失,处理数据库相关的进程或文件还是要特别小心。 目前,ORACLE数据库主要分widows和LINUX/U...
      现在,对于我来说,处理ORACLE告警日志alert多大不再是什么难题;但是,由于数据库是公司最重要的设备,不容有失,处理数据库相关的进程或文件还是要特别小心。
     目前,ORACLE数据库主要分widows和LINUX/UNIX版本,对于LINUX/UNIX平台,我们可以使用tail -n /path/alert*.log|more来查看,很方便;但是,windows操作平台,我们遇到如下图所示那么大个的告警日志,该怎么查看。你要说直接TXT文本打开,估计是不会成功的;有人说可以上传到linux查看,那还不如当初就在linux上部署Oracle数据库。所以,过大的ORACLE告警日志是很不方便查看的,需要我们运维人员定期查看并处理。

     对于linux平台,处理很简单,就是echo /dev/null > /path/alert*.log,举例如下:
     首先,查看告警日志的位置:
    [oracle@oradbs ~]$ sqlplus / as sysdba
    SQL*Plus: Release 11.2.0.3.0 Production on Thu May 19 18:09:19 2016
    Copyright (c) 1982, 2011, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> show parameter dump
    NAME     TYPE VALUE
    ------------------------------------ ----------- ------------------------------
    background_core_dump     string partial
    background_dump_dest     string /home/oracle/oracle/diag/rdbms/oradb/oradb/trace
    core_dump_dest     string /home/oracle/oracle/diag/rdbms/oradb/oradb/cdump
    max_dump_file_size     string unlimited
    shadow_core_dump     string partial
    user_dump_dest     string /home/oracle/oracle/diag/rdbms/oradb/oradb/trace
    [oracle@oradbs ~]$ ls -l /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert*.log
    -rw-r----- 1 oracle dba 94275 May 19 18:00 /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert_oradb.log
     其次,一定要先做备份:
    [oracle@oradbs ~]$ cp /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert*.log /home/oracle/alert_bak20160607
    [oracle@oradbs ~]$ ls
    alert_bak20160607  oracle  oraInventory
      再次,对告警日志进行截断处理:
    [oracle@oradbs ~]$ echo /dev/null > /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert*.log
    [oracle@oradbs ~]$ ls -l /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert*.log
    -rw-r----- 1 oracle dba 10 May 19 18:13 /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert_oradb.log
    处理的结果:
    [oracle@oradbs ~]$ cat /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert*.log
    /dev/null
      有人怀疑,动了告警日志,数据库是不是就不在往这个告警日志写日志了,答案是不会的,我们切换redo日志看看:
    [oracle@oradbs ~]$ sqlplus / as sysdba
    SQL*Plus: Release 11.2.0.3.0 Production on Thu May 19 18:15:49 2016
    Copyright (c) 1982, 2011, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> alter system switch logfile;
    System altered.
    SQL> 
    SQL> !cat /home/oracle/oracle/diag/rdbms/oradb/oradb/trace/alert*.log
    /dev/null
    Thu May 19 18:15:58 2016
    Thread 1 advanced to log sequence 7 (LGWR switch)
      Current log# 1 seq# 7 mem# 0: /oradata/oradb/redo01.log
    Thu May 19 18:15:58 2016
    Archived Log entry 4 added for thread 1 sequence 6 ID 0x9ecc00e3 dest 1:
    看吧!数据库还是会写到截断的告警日志里。
     那么,widows的告警日志过大又该怎么处理呢,流程是这样的:先做备份,然后直接删除即可,当数据库发生检查点或切换redo日志时,数据库会自动创建新的告警日志。举例如下:
     查看告警日志:
    C:\Users\localadmin>sqlplus sys/oracle as sysdba
    SQL*Plus: Release 11.2.0.1.0 Production on 星期二 6月 7 08:59:53 2016
    Copyright (c) 1982, 2010, Oracle.  All rights reserved.
    连接到:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    SQL> show parameter dump
    NAME                                 TYPE             VALUE
    ------------------------------------ ----------------------  ------------------------------
    background_core_dump                 string
    partial
    background_dump_dest                 string
    c:\oracle\diag\rdbms\oradb\ora
    db\trace
    core_dump_dest                       string
    c:\oracle\diag\rdbms\oradb\ora
    db\cdump
    max_dump_file_size                   string
    unlimited
    shadow_core_dump                     string
    none
    user_dump_dest                       string
    c:\oracle\diag\rdbms\oradb\ora
    db\trace
    SQL>

    由于是演示,我就在trace目录进行告警日志备份了:

      接下来,就可以删除原来的告警日志:

      通过切redo日志,可以使数据库生成新的告警日志文件:
    SQL> alter system switch logfile;
    系统已更改。
    SQL>
     




    来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29357786/viewspace-2116610/,如需转载,请注明出处,否则将追究法律责任。

    转载于:http://blog.itpub.net/29357786/viewspace-2116610/

    展开全文
  • 今天遇到报警,alert.log报出异常 [html]view plaincopy WARNING:...
  • 删除oracle 11g的警告日志和监听日志

    万次阅读 2012-10-19 13:41:15
    oracle 11g的监听日志和警告日志都是在/u01/oracle/diag/tnslsnr/oracle/listener目录和/u01/oracle/diag/rdbms/db1/db1目录下都有以下分别简称listener目录和db1目录。这两目录下都有如下目录:alert cdump hm ...
  • Oracle11g日志查看方法

    万次阅读 2009-10-31 16:49:00
    Oracle11日志查看方法 现象描述: oracle日常维护中经常需要检查alert告警日志,查看数据库是否有问题。 原因分析: oracle11g修改了日志系统,不在使用oracle9的alert_$ORACL
  • oracle各种trace清理

    万次阅读 2017-10-31 09:17:02
    在文件系统使用率较高的目录中,使用如下命令,找出文件或文件夹。根据文件类型选择清理策略。 du -sh *|sort -nr 1. 清理adump目录 清理参数audit_file_dest指定的目录,清理的文件为“*.aud” SQL> show ...
  • [转载]Oracle 11g 中告警日志的位置 原文地址:Oracle 11g 中告警日志的位置作者:superhao 首先介绍2个新名词 Automatic Diagnostic Repository (ADR) 一个存放数据库诊断日志、跟踪文件的目录,称作...
  • oracle 12c alert日志目录位置

    万次阅读 2017-08-31 20:21:59
    12c环境下查询,alert日志并不在bdump目录下,需要通过v$diag_info视图查询 SQL> show parameter dump NAME VALUE ------------------------ -----------------------  background_core_dump partial ...
  • oracle11G监听日志所在位置

    万次阅读 2013-08-22 18:22:20
    oracle 11g的监听日志和警告日志都是在/u01/oracle/diag/tnslsnr/oracle/listener目录和/u01/oracle/diag/rdbms/db1/db1目录下都有以下分别简称listener目录和db1目录
  • Oracle 11g的日志路径

    万次阅读 2010-11-25 04:40:00
    Oracle 11g的日志路径,Oracle数据库的最常用问题定位日志是alert日志,Oracle数据库的日志文件alert_$ORACLE_SID.log记录了重作日志的转换,数据库启动和关闭,数据库结构的改变,回退段的修改,死锁,内部错误等...
  • OCP-1Z0-052-V8.02-125题

    千次阅读 2013-10-14 22:27:08
    125. You want to check the details of few errors that users have reported. You search for the alert log file and execute few commands to find the location of the alert log file. ...
  • Oracle11g ,警告日志及其他日志路径

    千次阅读 2012-12-11 12:59:53
    Oracle 10g之前,告警日志位于bdump文件夹下,但11g对此做了变更,引入了ADR(一个存放数据库诊断日志、跟踪文件的目录),它对应的初始化参数为DIAGNOSTIC_DEST,如果设置了$ORACLE_BASE环境变量,那么DIAGNOSTIC_...
  • oracle 9i下的listener日志是在$ORACLE_HOME/network/log目录里,最近用了11G,发
  • oracle11g日志系统位置

    千次阅读 2018-08-28 19:40:17
    oracle11g修改了日志系统,不在使用oracle9的alert_$ORACLE_SID.log日志,修改为Diag Alert 和Diag Trace两个目录保存xml格式和文本格式的日志,这个两个目录分别放置于$ORACLE_HOME/diag/rdbms/rac/rac1/trace和...
  • Oracle DB查看预警日志

    万次阅读 2016-03-10 23:34:49
    Oracle DB查看预警日志   “Database(数据库)”主页>“Related Links相关链接)”区域> “Alert Log Content (预警日志内容)”     查看预警日志 每个数据库都有一个alert_.log文件。...
  • Oracle 11g Alert log 文件位置的问题

    千次阅读 2012-05-24 10:52:16
    Oracle 11g Alert log 文件位置的问题 alert log XML 文件位置:   select value from v$diag_info where name ='Diag Alert';   Alert log 文本文件位置:   select value from v$diag_info where name =...
  • oracle 11g 监听日志 设置

    千次阅读 2014-04-21 11:12:24
    11g开始引入ADR,监听日志就从原来的$ORACLE_HOME/network/log/listener.log变为了 $ORACLE_BASE/diag/tnslsnr/hostname/listener/alert/log.xml 当然也存在一份$ORACLE_BASE/diag/tnslsnr/hostname/listener/...
  • OCP-1Z0-053-V13.02-619题

    千次阅读 2014-02-12 08:52:13
    619.View the Exhibit and note the contents of V$DIAG_INFO. Which statement is true about the ADR? A. The text alert log file will be available in Diag Trace B. A copy alert log file will be k
1 2 3 4 5 ... 20
收藏数 14,418
精华内容 5,767
关键字:

diag目录过大 oracle