ix命令 topas 查到cpu使用率过高,平均达到94, 部分如下 Name PID CPU% PgSp Owner oracle 606274 6.7 18.6 oracle oracle 1507346 6.1 18.6 oracle crsd.bin 364596 0.3 46.9 root sh 409808 0.1 0.6 root topas 737462 0.1 2.5 root topas 1413372 0.1 2.5 oracle dtgreet 110798 0.1 1.4 root oracle 659548 0.1 30.2 oracle ocssd.bi 442452 0.1 35.9 oracle oracle 598074 0.1 12.4 oracle 根据猜测有可能是数据库链接没能释放引起的,可以通过进程pid查找 具体的sql来判断 命令如下 1)登陆oracle: $sqlplus / as sysdba; 2)通过进程pid查询session的id SQL> select ses.sid from v$session ses, v$process pro where pro.spid=606274 and ses.paddr=pro.addr; SID ---------- 1099 3)通过v$session查找具体信息 SQL> select username,lockwait,status,machine,program from v$session where sid = 1099; 4)通过v$session查找具体的sql语句 SQL> select sql_text from v$sql where hash_value in (select sql_hash_value from v$session where sid = 1099 ); 根据sql语句判断是否需要杀死进程,如需要杀死 kill -9 606274
也可以用
select sql_text,spid,v$session.program,process from v$sqlarea,v$session,v$process where v$sqlarea.address=v$session.sql_address and v$sqlarea.hash_value=v$session.sql_hash_value and v$session.paddr=v$process.addr and v$process.spid in (&PID);
利用绑定变量
select sql_text from v$sql where hash_value in (select sql_hash_value from v$session where sid = (select ses.sid from v$session ses, v$process pro where pro.spid= &pid and ses.paddr=pro.addr) );
&pid 变量名