1. Query the SQL statement executed by this process according to the process number that consumes high CPU:
Process number with high CPU:
#首先找到CPU过高的进程号 # TOP-BN1 is statically found to occupy the highest process [[email protected] ~]# TOP-BN1 | awk ' {print '} ' | GREP-A2 PID
SQL statements:
Select Sql_textfrom v$sqltext awhere (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 bwhere b.paddr = (SELECT addr from V$proc ESS C WHERE c.spid = ' &pid ')) ORDER by piece asc;###### #ex: SELECT sql_text from V$sqltext a WHERE (A.hash_value, a.addr ESS) 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 = ' 31968 ')) ORDER by piece ASC;
Oracle causes high system CPU checking of SQL