折雨的天空

博客介绍:本博客当前共有文章【985】篇,总阅读量【5,536,842】次,第一篇博客发表于【2011年04月06日 10时34分】,距今已【5177】天,感谢您的使用!

您的位置:折雨的天空 >其他技术> 一些有用的优化Oracle下SQL的语句

一些有用的优化Oracle下SQL的语句

SELECT 
    sql_id,
    sql_text,
    executions,
    elapsed_time / 1000000 AS total_seconds,
    elapsed_time / 1000000 / DECODE(executions, 0, 1, executions) AS avg_seconds,
    buffer_gets,
    disk_reads,
    sharable_mem / 1024 AS mem_kb
FROM 
    v$sql
WHERE 
    elapsed_time / 1000000 / DECODE(executions, 0, 1, executions) > 1  -- 仅显示平均执行时间超过1秒的SQL
ORDER BY 
    avg_seconds DESC
FETCH FIRST 10 ROWS ONLY;

SELECT 
    sql_id,
    sql_text,
    executions,
    cpu_time / 1000000 AS total_cpu_seconds,
    cpu_time / 1000000 / DECODE(executions, 0, 1, executions) AS avg_cpu_seconds,
    elapsed_time / 1000000 AS total_elapsed_seconds,
    buffer_gets,
    disk_reads
FROM 
    v$sql
WHERE 
    cpu_time > 0  -- 排除未消耗CPU的SQL
    AND executions > 0  -- 排除未执行的SQL
ORDER BY 
    total_cpu_seconds DESC
FETCH FIRST 10 ROWS ONLY; 


SELECT sql_id, sql_text
FROM v$sql
WHERE sql_id = '10gywwmwk6xfy'


EXPLAIN PLAN FOR
你的SQL


SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);


CREATE INDEX idx_zjhm_length ON TB_CHSS_GRJKDA (LENGTH(ZJHM));

SELECT 
    s.sid, 
    s.serial#, 
    s.username, 
    s.osuser, 
    s.machine, 
    s.program, 
    l.type, 
    l.lmode, 
    l.request, 
    l.id1, 
    l.id2
FROM 
    v$session s 
JOIN 
    v$lock l ON s.sid = l.sid
WHERE 
    l.id1 IN (SELECT object_id FROM dba_objects WHERE object_name = 'TB_MZ_CFZB')
    AND s.status = 'ACTIVE';

ALTER SYSTEM KILL SESSION '1765,17204';


SELECT 
    index_name,
    table_name,
    leaf_blocks,
    distinct_keys,
    CASE 
        WHEN leaf_blocks = 0 THEN 0
        ELSE (leaf_blocks - distinct_keys) / leaf_blocks 
    END AS fragmentation_ratio,
    CASE 
        WHEN leaf_blocks = 0 THEN '空索引'
        WHEN (leaf_blocks - distinct_keys) / leaf_blocks > 0.2 THEN '高碎片率'
        ELSE '正常'
    END AS index_status
FROM 
    dba_indexes
WHERE 
    owner = 'dede'
ORDER BY 
    fragmentation_ratio DESC;

------------正 文 已 结 束, 感 谢 您 的 阅 读 (折雨的天空)--------------------

转载请注明本文标题和链接:《一些有用的优化Oracle下SQL的语句

奖励一下

取消

分享不易,烦请有多多打赏,如您也困难,点击右边关闭即可!

扫码支持
扫码打赏,5元,10元,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

-秒后自动关闭,如已打赏,或者不愿打赏,请点击右上角关闭图标。

发表评论

路人甲 表情
看不清楚?点图切换