查找消耗CPU较大的sql语句
发布时间:2018-08-22 20:22:07 所属栏目:电商 来源:站长网
导读:查找消耗CPU较大的sql语句 一、使用unix系统命令查看资源 #sar 1 9 12:15:27 73 27 0 012:15:28 70 30 0 012:15:29 80 20 0 012:15:30 84 16 0 012:15:31 21 5 1 73 #top TTY PID USERNAME PRI NI SIZE RES STATE TIME %WCPU %CPU COMMAND ? 23093 oracle
查找消耗CPU较大的sql语句 一、使用unix系统命令查看资源 #sar 1 9 12:15:27 73 27 0 012:15:28 70 30 0 012:15:29 80 20 0 012:15:30 84 16 0 012:15:31 21 5 1 73 #top TTY PID USERNAME PRI NI SIZE RES STATE TIME %WCPU %CPU COMMAND ? 23093 oracle 154 20 29748K 3112K run 20:53 4.59 4.58 oraclebv ? 23087 oracle 154 20 29636K 3016K run 24:18 0.93 0.93 oraclebv 二、使用oracle数据字典查找sql SQL>set line 240SQL>set verify offSQL>column sid format 999SQL>column pid format 999 SQL>column S_# format 999SQL>column username format A9 heading "ORA User"SQL>column program format a29SQL>column SQL format a60SQL>COLUMN OSname format a9 Heading "OS User"SQL>SELECT P.pid pid,S.sid sid,P.spid spid,S.username username,S.osuser osname,P.serial# S_#,P.terminal,P.program program,P.background,S.status,a.sql_text SQLFROM v$process P, v$session S,v$sqlarea A WHERE P.addr = s.paddrAND S.sql_address = a.address (+) AND P.spid LIKE '%&1%'; Enter value for 1: 23209(系统消耗较大进程id) 找到结果: select * from cc_por where status=1 and deleted=0 使用autotrace分析语句。 sql>set timing on sql>set autotrace on sql>select * from cc_por where status=1 and deleted=0; 根据结果进行分析和改进。 (编辑:晋江门户网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |