重庆思庄Oracle、Redhat认证学习论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2924|回复: 0
打印 上一主题 下一主题

[参考文档] SQL_TRACE的说明

[复制链接]
跳转到指定楼层
楼主
发表于 2019-2-12 13:13:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

在全局启用SQL_TRACE会导致所有进程的活动被跟踪,包括后台进程及所有用户进程,这通常会导致比较严重的性能问题,所以在生产环境中要谨慎使用,这个参数在10g之后是动态参数,可以随时调整,在某些诊断中非常有效。


注意:
设置初始化sql_trace参数为ture会对整个实例产生严重的性能影响,所以在生产中不建议设置这个参数。如果要对特定的session启用跟踪,可以使用alter session或者dbms_system.set_sql_trace_in_session来设置,你需要保证一下条件以最小化性能影响:
1、至少保证有25%的CPU idlc;
2、为user_dump_dest分配足够的空间;
3、条带化磁盘减轻IO负担。


[oracle@localhost ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.4.0 Production on Tue Feb 12 11:19:22 2019
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options


SQL> show parameter SQL_trace;


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
sql_trace                            boolean     FALSE


启用当前session的跟踪:
SQL> alter session set SQL_trace=true;
Session altered.


此时的SQL操作将被跟踪:
SQL> select count(*) from dba_users;
  COUNT(*)
----------
        32



结束跟踪:
SQL> alter session set SQL_trace=false;
Session altered.



查看当前跟踪文件
SQL> select value from v$diag_info where name='Default Trace File';

VALUE
--------------------------------------------------------------------------------
/u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_4080.trc

[oracle@localhost ~]$ cd /u01/app/oracle/diag/rdbms/orcl/orcl/trace/
[oracle@localhost trace]$ more orcl_ora_4080.trc

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|小黑屋|重庆思庄Oracle、Redhat认证学习论坛 ( 渝ICP备12004239号-4 )

GMT+8, 2024-4-30 13:56 , Processed in 0.103962 second(s), 23 queries .

重庆思庄学习中心论坛-重庆思庄科技有限公司论坛

© 2001-2020

快速回复 返回顶部 返回列表