zoukankan      html  css  js  c++  java
  • Oracle 11g中查询CPU占有率高的SQL

    oracle版本:oracle11g

    背景:今天在Linux中的oracle服务上,运用top命令发现许多进程的CPU占有率是100%。

    操作步骤:

    以进程PID:7851为例

    执行以下语句:

    方法一:

    (1)通过PID,查得相对应的系统进程对应的session id

             select sid from v$session where paddr in (select addr from v$process where spid=7851

        得到SID:206

    (2)根据所得的会话ID查得sql地址和hash

        select sql_address,sql_hash_value from v$session where sid=206

             得到:SQL_ADDRESS:6EC554F4      SQL_HASH_VALUE:3141392848

    (3)根据sql hash值查得sql语句

        select sql_text from v$sqltext where hash_value=3141392848

       得到SQL语句:INSERT INTO TEST SELECT * FROM SYS.DBA_OBJECTS      此SQL语句就是此进程CPU占有率过高的语句了。

    方法二:

    SELECT
    sql_text
    FROM v$sqltext a
    WHERE (a.hash_value, a.address) IN
    (SELECT DECODE(sql_hash_value, 0, prev_hash_value, sql_hash_value),
    DECODE(sql_hash_value, 0, prev_sql_addr, sql_address)
    FROM v$session b
    WHERE b.paddr =
    (SELECT addr FROM v$process c WHERE c.spid = 7851))
    ORDER BY piece ASC

    通过此SQL语句可以直接得出:

    INSERT INTO TEST SELECT * FROM SYS.DBA_OBJECTS      此SQL语句就是此进程CPU占有率过高的语句了。

  • 相关阅读:
    Sql优化思路
    「网络流随想随记」
    「ZJOI 的部分题解整理」
    「循环矩阵相关的一些东西」
    知识蒸馏
    3D Human Pose Estimation with 2D Marginal Heatmaps
    模型剪枝
    目标检测小网络
    selenium---解决clear方法失效
    selenium---快速跳转到指定元素
  • 原文地址:https://www.cnblogs.com/xiangxiushu/p/13613600.html
Copyright © 2011-2022 走看看