日期:2014-05-16  浏览次数:20428 次

Oracle数据库案例整理-Oracle系统运行时故障-sql_trace设置为TRUE导致Oracle根目录可用空间不足

1.1       现象描述

在“$ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/trace”目录下产生大量“oracle_w000_9708.trc”和“oracle_w000_9708.trm”文件。产生这些文件的速度太快,导致Oracle根目录可用空间不足。

1.2       可能原因

导致“$ORACLE_BASE/diag/rdbms/$ORACLE_SID/$ORACLE_SID/tracee”目录产生大量文件的可能原因是数据库全局sql_trace开关设置为TRUE。

1.3       处理步骤

  1. oracle用户登录数据库机器。
  2. sysdba用户连接数据库。

% sqlplus / as sysdba

  1. 查看全局sql_trace开关状态。

SQL> show parameter trace;

系统显示如下信息:

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_trace                    integer     0
sec_protocol_error_trace_action      string      TRACE
sql_trace                            boolean     TRUE
trace_enabled                        boolean     TRUE
tracefile_identifier                 string
  1. 关闭全局sql_trace开关。

SQL> alter database set sql_trace = false;

  1. 检查问题是否解决。

1.4       参考信息

如果要跟踪某个session,只需要session级别打开,跟踪完请及时关闭。

·         打开session级别跟踪:

SQL> alter session set sql_trace = ture;

·         关闭session级别跟踪:

SQL> alter session set sql_trace = false;