The key to solving this problem is finding SQL statements that cause high CPU usage. The steps are as follows:
1. Use the Process Explorer tool to view the Oracle process, double-click the Oracle process, and view the high CPU thread number (TID) In the Threads tab of the pop-up Properties window.
2. Execute the following SQL statement in the PL/SQL tool:
--Get the corresponding SQL statement (Sql_text,sql_fulltext) based on sql_id
SELECT *
From V$sqlarea
where sql_id in
(
--Get sql_id according to addr
Select sql_id
From V$session
where Paddr in
--Get the addr of the process according to the line number
(select addr from v$process where spid in (' &spid: Thread number '))
);
3, in the results of the above SQL query statement "Sql_text", "Sql_fulltext" two columns is the SQL statement to find.
4, according to different SQL statement tuning can be.
Oracle query statement causes high CPU usage problem handling