sap sql query

Download Sap SQL Query

If you can't read please download the document

Upload: chandargupta

Post on 11-Nov-2015

217 views

Category:

Documents


2 download

DESCRIPTION

SAP SQL Query

TRANSCRIPT

SELECT ROUND((STM1.VALUE - STM2.VALUE) / 1000000) "BUSY WAIT TIME (S)", ROUND(STM2.VALUE / 1000000) "CPU TIME (S)", ROUND((STM1.VALUE - STM2.VALUE) / STM1.VALUE * 100) || ' : ' || ROUND(STM2.VALUE / STM1.VALUE * 100) RATIO FROM V$SYS_TIME_MODEL STM1, V$SYS_TIME_MODEL STM2 WHERE STM1.STAT_NAME = 'DB time' AND STM2.STAT_NAME = 'DB CPU'; SELECT SUBSTR(WAIT_CLASS, 1, 30) WAIT_CLASS, ROUND(TIME_WAITED/100) "TIME_WAITED (S)", ROUND(RATIO_TO_REPORT(TIME_WAITED) OVER () * 100) PERCENT FROM (SELECT WAIT_CLASS, SUM(TIME_WAITED) TIME_WAITED FROM V$SYSTEM_EVENT GROUP BY WAIT_CLASS) ORDER BY 2 DESC; SELECT EVENT, TIME_WAITED, AVERAGE_WAIT FROM V$SYSTEM_EVENT ORDER BY TIME_WAITED DESC; SELECT low_optimal_size/1024 "Low(K)", (high_optimal_size+1)/1024 "High(K)", estd_optimal_executions "Optimal", estd_onepass_executions "One Pass", estd_multipasses_executions "Multi-Pass" FROM v$pga_target_advice_histogram WHERE pga_target_factor = 2 AND estd_total_executions != 0 ORDER BY 1; column c1 heading 'Target(M)' column c2 heading 'Estimated|Cache Hit %' column c3 heading 'Estimated|Over-Alloc.' SELECT ROUND(pga_target_for_estimate /(1024*1024)) c1, estd_pga_cache_hit_percentage c2, estd_overalloc_count c3 FROM v$pga_target_advice; --- cache advisor: col size_est format 999,999,999,999 heading 'Cache Size (m)' col buf_est format 999,999,999 heading 'Buffers' col estd_rf format 999.90 heading 'Estd Phys|Read Factor' column estd_pr format 999,999,999 heading 'Estd Phys| Reads' SET LINES 80 PAGES 100 SELECT size_for_estimate size_est, buffers_for_estimate buf_est, estd_physical_read_factor est_rf, estd_physical_reads est_pr FROM V$DB_CACHE_ADVICE WHERE name = 'DEFAULT' AND block_size = (SELECT value FROM V$PARAMETER WHERE name = 'db_block_size') AND advice_status = 'ON'; -- redo Select GROUP#, THREAD#, BYTES/1024/1024/1024, MEMBERS from v$log; set linesize 300 set pagesize 5000 set trimspool on column 00 format 999 heading "00:00" column 01 format 999 heading "1am" column 02 format 999 heading "2am" column 03 format 999 heading "3am" column 04 format 999 heading "4am" column 05 format 999 heading "5am" column 06 format 999 heading "6am" column 07 format 999 heading "7am" column 08 format 999 heading "8am" column 09 format 999 heading "9am" column 10 format 999 heading "10am" column 11 format 999 heading "11am" column 12 format 999 heading "12:00" column 13 format 999 heading "1pm" column 14 format 999 heading "2pm" column 15 format 999 heading "3pm" column 16 format 999 heading "4pm" column 17 format 999 heading "5pm" column 18 format 999 heading "6pm" column 19 format 999 heading "7pm" column 20 format 999 heading "8pm" column 21 format 999 heading "9pm" column 22 format 999 heading "10pm" column 23 format 999 heading "11pm" column 24 format 999 heading "12pm" column "Day" format a3 prompt prompt Redo Log Switches prompt SELECT trunc (first_time) "Date", to_char (trunc (first_time),'Dy') "Day", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 0, 1)) "00", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 1, 1)) "01", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 2, 1)) "02", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 3, 1)) "03", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 4, 1)) "04", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 5, 1)) "05", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 6, 1)) "06", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 7, 1)) "07", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 8, 1)) "08", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 9, 1)) "09", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 10, 1)) "10", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 11, 1)) "11", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 12, 1)) "12", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 13, 1)) "13", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 14, 1)) "14", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 15, 1)) "15", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 16, 1)) "16", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 17, 1)) "17", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 18, 1)) "18", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 19, 1)) "19", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 20, 1)) "20", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 21, 1)) "21", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 22, 1)) "22", sum (decode (to_number (to_char (FIRST_TIME, 'HH24')), 23, 1)) "23" from v$log_history where trunc (first_time) >= (trunc(sysdate) - 14) group by trunc (first_time) order by trunc (first_time) DESC; -- last X days. 0 = today only. 1 = today and yesterday / -- sessions with highest DB Time usage PROMPT sessions with highest DB Time usage SELECT s.sid, s.serial#, p.spid as "OS PID", s.username, s.module, st.value/100 as "DB Time (sec)" , stcpu.value/100 as "CPU Time (sec)", round(stcpu.value / st.value * 100,2) as "% CPU" FROM v$sesstat st, v$statname sn, v$session s, v$sesstat stcpu, v$statname sncpu, v$process p WHERE sn.name = 'DB time' -- CPU AND st.statistic# = sn.statistic# AND st.sid = s.sid AND sncpu.name = 'CPU used by this session' -- CPU AND stcpu.statistic# = sncpu.statistic# AND stcpu.sid = st.sid AND s.paddr = p.addr AND s.last_call_et < 1800 -- active within last 1/2 hour AND s.logon_time > (SYSDATE - 240/1440) -- sessions logged on within 4 hours AND st.value > 0; -- sessions with the highest time for a certain wait PROMPT sessions with the highest time for a certain wait SELECT s.sid, s.serial#, p.spid as "OS PID", s.username, s.module, se.time_waited FROM v$session_event se, v$session s, v$process p WHERE se.event = 'SQL*Net message to client' AND s.last_call_et < 1800 -- active within last 1/2 hour AND s.logon_time > (SYSDATE - 240/1440) -- sessions logged on within 4 hours AND se.sid = s.sid AND s.paddr = p.addr ORDER BY se.time_waited;---------------NO Data Found for this Query-- sessions_with_highest_CPU_consumption.lst PROMPT sessions with highest CPU consumption SELECT s.sid, s.serial#, p.spid as "OS PID",s.username, s.module, st.value/100 as "CPU sec" FROM v$sesstat st, v$statname sn, v$session s, v$process p WHERE sn.name = 'CPU used by this session' -- CPU AND st.statistic# = sn.statistic# AND st.sid = s.sid AND s.paddr = p.addr AND s.last_call_et < 1800 -- active within last 1/2 hour AND s.logon_time > (SYSDATE - 240/1440) -- sessions logged on within 4 hours ORDER BY st.value; -- sessions_with_highest_DBTime_usage.lst PROMPT sessions with highest DB Time usage 10g and upper SELECT s.sid, s.serial#, p.spid as "OS PID", s.username, s.module, se.event, st.value/100 as "DB Time (sec)" , stcpu.value/100 as "CPU Time (sec)", round(stcpu.value / st.value * 100,2) as "% CPU" FROM v$sesstat st, v$statname sn, v$session s, v$sesstat stcpu, v$statname sncpu, v$process p WHERE sn.name = 'DB time' -- CPU AND st.statistic# = sn.statistic# AND st.sid = s.sid AND sncpu.name = 'CPU used by this session' -- CPU AND stcpu.statistic# = sncpu.statistic# AND stcpu.sid = st.sid AND s.paddr = p.addr AND s.last_call_et < 1800 -- active within last 1/2 hour AND s.logon_time > (SYSDATE - 240/1440) -- sessions logged on within 4 hours AND st.value > 0; SELECT ROUND((STM1.VALUE - STM2.VALUE) / 1000000) "BUSY WAIT TIME (S)", ROUND(STM2.VALUE / 1000000) "CPU TIME (S)", ROUND((STM1.VALUE - STM2.VALUE) / STM1.VALUE * 100) || ' : ' || ROUND(STM2.VALUE / STM1.VALUE * 100) RATIO FROM V$SYS_TIME_MODEL STM1, V$SYS_TIME_MODEL STM2 WHERE STM1.STAT_NAME = 'DB time' AND STM2.STAT_NAME = 'DB CPU'; Select GROUP#, THREAD#, BYTES/1024/1024/1024, MEMBERS from v$log; ttitle 'Top Ten Tables (by size)' set lines 75 col tab heading "Table Name" format a55 col bytes heading "Size|(in Bytes)" format 999,999,999,999 select bytes, tab from (select owner||'.'||segment_name tab, bytes from dba_segments where segment_type = 'TABLE' order by bytes desc) where rownum