`

oracle v$session,v$sqlarea 性能分析

阅读更多

/****查看资源最多的sql*****/

select 

PARSING_USER_ID ,VERSION_COUNT,SQL_TEXT,CPU_TIME,ELAPSED_TIME,EXECUTIONS,

ROWS_PROCESSED,

HASH_VALUE,

buffer_gets ,

disk_reads

 from V$SQLAREA

WHERE buffer_gets > 10000000 OR disk_reads > 1000000  

ORDER BY buffer_gets + 100 * disk_reads DESC;  

 

/*****查看某条SQL语句的资源消耗:**********

SELECT hash_value, buffer_gets, disk_reads, executions, parse_calls  

FROM V$SQLAREA  

WHERE hash_Value = 228801498 AND address = hextoraw('CBD8E4B0');  

 

/*****************8查找前10条性能差的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<10 ;

 

 

/**************************8分析性能差的sql*******************************/

SELECT EXECUTIONS , DISK_READS, BUFFER_GETS, 

ROUND((BUFFER_GETS-DISK_READS)/BUFFER_GETS,2) 

 

Hit_radio, 

ROUND(DISK_READS/EXECUTIONS,2) Reads_per_run, 

SQL_TEXT 

FROM V$SQLAREA 

WHERE 

 

EXECUTIONS>0 

AND BUFFER_GETS >0 

AND (BUFFER_GETS-DISK_READS)/BUFFER_GETS < 0.8

 

查询共享池中已经解析过的SQL语句及其相关信息 

--EXECUTIONS 所有子游标的执行这条语句次数 

--DISK_READS 所有子游标运行这条语句导致的读磁盘次数 

--BUFFER_GETS 所有子游标运行这条语句导致的读内存次数 

--Hit_radio 命中率 

--Reads_per_run 每次执行读写磁盘数 

笼统的说EXECUTIONS,BUFFER_GETS,Hit_radio越高表示读内存多,磁盘少是比较理想的状态,因此越

 

高越好 

 

 

/*********************选出最占用资源的查询********/

select b.username username,a.disk_reads reads,a.executions exec,  

    a.disk_reads/decode(a.executions,0,1,a.executions) rds_exec_ratio,  

    a.sql_text statement  

    from v$sqlarea a,dba_users b  

    where a.parsing_user_id=b.user_id  

    and a.disk_reads>100000  

 

--------------------查看当前会话所执行的语句以及会话相关信息-----

 select  a.sid,a.sql_address,s.address,a.username,a.TERMINAL,a.program, 

 

s.sql_text,s.SQL_TEXT,s.CPU_TIME,s.ELAPSED_TIME,s.FIRST_LOAD_TIME,s.LAST_ACTIVE_TIME from 

 

v$session a

,v$sqlarea s

where a.sql_address = s.address(+)

and a.sql_hash_value = s.hash_value(+)

order by a.username, a.sid

 

分享到:
评论

相关推荐

    Oracle v$sqlarea, v$sql, v$sqltext视图说明

    简单描述Oracle v$sqlarea, v$sql, v$sqltext视图说明

    oracle 动态性能(V$)视图

    1. **执行计划分析**:如V$SQL、V$SQLAREA和V$SQLTEXT,这些视图存储了SQL语句的相关信息,包括执行计划、统计信息和绑定变量等,对SQL性能分析至关重要。 2. **资源使用情况**:V$SESSION、V$SESSION_WAIT和V$...

    Oracle的V$性能视图学习大全

    此外,V$视图家族中的V$SQLAREA、V$SQLTEXT、V$SESSION和V$SESS_IO等视图,可以用来查询和分析SQL语句的执行状态和性能。通过这些视图,DBA可以识别出执行时间长、占用资源多的SQL查询,进而对查询语句进行优化。 ...

    常用Oracle监控数据库性能的SQL

    6. `V$SQLAREA` 和 `V$SQL`: 追踪SQL语句的执行情况,了解SQL性能。 ```sql SELECT sql_text, executions, parse_calls, disk_reads, buffer_gets FROM v$sqlarea WHERE rows_processed &gt; 0 ORDER BY buffer_gets ...

    oracle 查看当前会话执行的sql语句

    select SQL_TEXT from v$sqlarea where address = (select sql_address from v$session where sid = ***); ``` 这里的`***`代表要查询的SID值。 #### 6. 监控SQL执行情况 对于更高级的监控需求,我们还可以查看...

    oracle监听执行sql语句

    这条SQL语句通过连接`v$session`和`v$sqlarea`两个视图来获取当前会话中执行的SQL语句及其完整文本。其中`v$session`包含了所有活动会话的信息,而`v$sqlarea`则存储了最近执行过的SQL语句的元数据。通过`a.sql_...

    学习动态性能表(11)--v$latch$v$latch_children

    【学习动态性能表(11)--v$latch$v$latch_children】主要关注Oracle数据库中的动态性能视图,尤其是关于latch这一关键概念的监控和分析。latch是一种轻量级的锁定机制,用于保护SGA(System Global Area)中的共享...

    Oracle中查看正在运行的SQL进程脚本分享

    这个脚本通过`v$session`和`v$sqlarea`两个动态性能视图联接,展示了正在执行的SQL的用户、机器、SQL_ID以及SQL语句文本。`LINESIZE`和`PAGESIZE`设置了输出格式,以便更清晰地显示数据。`sql_text`列用`A100`格式...

    oracle常用性能分析语句执行情况等语句总结

    FROM v$process a, v$session b, v$sqlarea c WHERE a.addr = b.paddr AND b.sql_hash_value = c.hash_value; ``` 此外,可以查看正在执行SQL的发起者信息,包括其电脑登录身份、发起请求的程序、登录系统的用户名...

    Oracle性能视图学习大全

    5. **分析SQL执行效率**:通过查询`V$SQLAREA`、`V$SQLTEXT`等视图,可以定位执行效率低下的SQL语句,并对其进行优化。同时,结合`V$SESSION`和`V$SESS_IO`视图,可以进一步分析特定会话的资源消耗情况。 6. **识别...

    查询Oracle中正在执行和执行过的SQL语句

    查询Oracle正在执行的sql语句及执行该语句的用户 ...FROM v$process a, v$session b, v$sqlarea c WHERE a.addr = b.paddr AND b.sql_hash_value = c.hash_value 其它网友给出的正在执行的sql语句代码 select a.u

    常用oracle动态性能视图

    - 获取指定会话执行的 SQL 语句:`SELECT b.sql_text FROM v$session a, v$sqlarea b WHERE a.sql_hash_value=b.hash_value AND a.sid=100;` 了解和熟练运用 V$SESSION 视图及其关联视图,可以帮助数据库管理员...

    ORACLE動態性能表

    - **查询执行计划**:V$SQL、V$SQLAREA提供SQL语句的执行计划和相关信息。 - **缓冲区管理**:V$BUFFER_CACHE、V$ROWCACHE跟踪数据和索引块的缓存行为。 - **锁和等待**:V$LOCK、V$SESSION_WAIT揭示了锁定和等待...

    oracle DBA工作排程

    为了找出当前正在执行的SQL语句,DBA可以使用`V$SESSION`和`V$SQLAREA`视图。例如,通过以下查询可以获取到用户、会话ID(SID)、SQL文本等信息: ```sql SELECT a.username, a.sid, b.SQL_TEXT, b.SQL_FULLTEXT ...

    oracle动态性能表

    v$sqltext包含SQL语句的实际文本,而v$sqlarea则包含了与执行计划相关的额外信息,如解析次数、绑定变量等。 4. **v$session**: 提供了当前数据库会话的详细信息,包括用户、主机名、等待事件等。这对于追踪会话...

    学些动态性能表-word版

    学习动态性能表(四)--v$sqltext&v$sqlarea 学习动态性能表(五)--v$session 学习动态性能表(六)--v$session_wait&v$session_event 学习动态性能表(七)--v$process 学习动态性能表(八)--v$lock&v$locked_object ...

    oracle性能监控常用语句集合

    例如,`V$SESSION`用于查看当前会话状态,`V$INSTANCE`显示实例信息,`V$SESSION_WAIT`揭示会话等待事件,而`V$SQL`和`V$SQLAREA`则用于分析SQL性能。 2. **系统资源监控**: - `SELECT * FROM V$PGA_MEMORY_...

    Oracle 动态性能表

    18. **V$SQLAREA**: 提供已执行的SQL语句的历史记录,包括执行次数、CPU时间等。 19. **V$SESSION_LONGOPS_HISTORY**: 历史性的长操作信息,有助于跟踪过去的问题。 20. **V$INSTANCE_RESTART**: 记录实例重启的...

Global site tag (gtag.js) - Google Analytics