Heim > Datenbank > MySQL-Tutorial > Oracle查看执行过的SQL

Oracle查看执行过的SQL

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-06-07 15:38:11
Original
2263 Leute haben es durchsucht

Reference: http://blog.csdn.net/xiaoxu0123/article/details/38846685 Reference: http://blog.sina.com.cn/s/blog_4a80a5730101oxnk.html Reference: http://blog.csdn.net/fycghy0803/article/details/16845575 ORACLE中可以通过 v$session 表查看当前有

    Reference: http://blog.csdn.net/xiaoxu0123/article/details/38846685

    Reference: http://blog.sina.com.cn/s/blog_4a80a5730101oxnk.html

    Reference: http://blog.csdn.net/fycghy0803/article/details/16845575

   ORACLE中可以通过v$session表查看当前有效的session信息,并且可以通过v$session的sql_id或sql_address通过关联查询v$sql查看当前正在执行的sql语句;

 如果想查看session近期执行的sql语句,可以通过v$active_session_history表中的sql_id查看近期历史执行的sql语句,要求数据库的liberary没有被fresh。

SELECT b.sql_text,                    --content of SQL
         a.machine,                     --which machine run this code
         a.username, a.module,          -- the method to run this SQL
         c.sofar / totalwork * 100,     --conplete percent
         c.elapsed_seconds,             --run time
        c.time_remaining               --remain to run time
FROM v$session a, v$sqlarea b, v$session_longops c
WHERE a.sql_hash_value = b.hash_value(+) AND a.SID = c.SID(+)
              AND a.serial# = c.serial#(+)
       --AND a.sid=139
Nach dem Login kopieren

Oracle 最近执行过的sql语句:

SELECT   sql_text, last_load_time
FROM v$sql
WHERE last_load_time IS NOT NULL
ORDER BY last_load_time DESC
Nach dem Login kopieren

    其它,
SELECT sql_text,last_load_time FROM v$sql order by last_load_time desc;
Nach dem Login kopieren

SELECT   sql_text, last_load_time FROM v$sql WHERE last_load_time IS NOT NULL and sql_text like 'select%' ORDER BY last_load_time DESC;
Nach dem Login kopieren

SELECT   sql_text, last_load_time FROM v$sql WHERE last_load_time IS NOT NULL and sql_text like 'update%' ORDER BY last_load_time DESC;
Nach dem Login kopieren

SELECT   sql_text, last_load_time FROM v$sql WHERE last_load_time IS NOT NULL and last_load_time like' 14-06-09%' ORDER BY last_load_time DESC;
Nach dem Login kopieren

监控concurrent 正在执行的sql

SELECT a.sid, a.serial#, b.sql_text
  FROM v$session a, v$sqltext b
WHERE a.sql_address = b.address
  --AND a.sid = <...>
ORDER BY b.piece</...>
Nach dem Login kopieren

正在执行的

SELECT a.username, a.sid,b.SQL_TEXT, b.SQL_FULLTEXT
 FROM v$session a, v$sqlarea b 
where a.sql_address = b.address 
Nach dem Login kopieren

执行过的
SELECT b.SQL_TEXT,b.FIRST_LOAD_TIME,b.SQL_FULLTEXT
FROM v$sqlarea b
WHERE b.FIRST_LOAD_TIME between '2009-10-15/09:24:47' and
       '2009-10-15/09:24:47' order by b.FIRST_LOAD_TIME 
Nach dem Login kopieren

(此方法好处可以查看某一时间段执行过的sql,并且 SQL_FULLTEXT 包含了完整的 sql 语句)


其他
SELECT OSUSER,PROGRAM,USERNAME,SCHEMANAME,B.Cpu_Time,STATUS,B.SQL_TEXT 
FROM V$SESSION A LEFT JOIN V$SQL B ON A.SQL_ADDRESS=B.ADDRESS AND A.SQL_HASH_VALUE=B.HASH_VALUE ORDER BY b.cpu_time desc 
Nach dem Login kopieren

SELECT address, sql_text, piece 
FROM v$session, v$sqltext 
WHERE address = sql_address 
  -- and machine =  
ORDER BY address, piece 
Nach dem Login kopieren

查找前十条性能差的sql
SELECT * FROM (SELECT PARSING_USER_ID,EXECUTIONS,SORTS, 
COMMAND_TYPE,DISK_READS,sql_text FROM v$sqlarea 
ORDER BY disk_reads DESC )WHERE ROWNUM<strong><strong><br>
<strong>查看占io较大的正在运行的session<wbr> <wbr></wbr></wbr></strong><br>
<br>
</strong></strong><pre class="brush:php;toolbar:false">SELECT se.sid,se.serial#,pr.SPID,se.username,se.status, 
se.terminal,se.program,se.MODULE,se.sql_address,st.event,st. 
p1text,si.physical_reads, 
si.block_changes FROM v$session se,v$session_wait st, 
v$sess_io si,v$process pr WHERE st.sid=se.sid AND st. 
sid=si.sid AND se.PADDR=pr.ADDR AND se.sid>6 AND st. 
wait_time=0 AND st.event NOT LIKE '%SQL%' ORDER BY physical_reads DESC
Nach dem Login kopieren



Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage