Oracle 11g 資料庫伺服器CPU、IO負載高的故障排除流程
使用top檢視負載高的程式
~ [OSMSRDB]$ top
top - 11:02:43 up 12 days, 17:15, 4 users, load average: 1.50, 0.93, 0.36
Tasks: 363 total, 1 running, 362 sleeping, 0 stopped, 0 zombie
Cpu(s): 1.2%us, 0.3%sy, 0.0%ni, 68.4%id, 30.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 10129680k total, 7539812k used, 2589868k free, 478612k buffers
Swap: 4194300k total, 0k used, 4194300k free, 5973136k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
22584 ora112 -2 0 837m 16m 14m S 100.0 3.7 74:09.62 oracle
3274 ora112 -2 0 837m 16m 14m S 1.0 0.2 211:11.85 oracle
6147 ora112 -2 0 837m 16m 14m S 1.0 0.2 19:25.63 oracle
7787 ora112 -2 0 837m 16m 14m S 1.0 0.2 62:43.66 oracle
10696 ora112 -2 0 2251m 16m 14m S 1.0 0.2 190:34.75 oracle
17198 ora112 -2 0 837m 16m 14m S 1.0 0.2 60:53.89 oracle
1874 root 20 0 13584 740 576 S 0.3 0.0 1:11.80 lldpad
3323 ora112 20 0 837m 18m 16m S 0.3 0.2 21:49.55 oracle
使用 PS 檢視程式的資訊
~ [OSMSRDB]$ ps -ef|grep 22584
ora112 15567 16186 0 11:06 pts/1 00:00:00 grep 22584
ora112 22584 1 1 Sep19 ? 01:14:13 ora_vktm_OSMSRDB
登陸資料庫,檢視等待事件
SELECT * FROM V$SESSION_WAIT WHERE WAIT_CLASS <> 'Idle' ORDER BY SECONDS_IN_WAIT DESC;
檢視資料庫正在執行的SQL,發現一直在執行的是DBMS_SCHEDULER模組,job名是OSMSR_OPERATION_DURATION
select s.SID,s.SERIAL#,MACHINE,TERMINAL, OSUSER, SCHEMANAME, PROGRAM,MODULE,ACTION,CLIENT_INFO,
decode(s.COMMAND,3,'SELECT',s.COMMAND) COMMAND,STATUS,SQL_ID,SQL_ADDRESS,SQL_EXEC_START,
DECODE(STATUS,'ACTIVE',LAST_CALL_ET,NULL) "SQL執行時間",EVENT,STATE,SECONDS_IN_WAIT,SERVICE_NAME
from V$SESSION s where s.USERNAME is not null AND WAIT_CLASS <> 'Idle';
檢視job
select job_name,state from dba_scheduler_jobs where state= 'RUNNING';
停止job
SQL> BEGIN
DBMS_SCHEDULER.STOP_JOB('OSMSR_OPERATION_DURATION');
END; 2 3
4 /
PL/SQL procedure successfully completed.
SQL> select job_name,state from dba_scheduler_jobs where state= 'RUNNING';
no rows selected
~ [OSMSRDB]$ top
top - 11:02:43 up 12 days, 17:15, 4 users, load average: 1.50, 0.93, 0.36
Tasks: 363 total, 1 running, 362 sleeping, 0 stopped, 0 zombie
Cpu(s): 1.2%us, 0.3%sy, 0.0%ni, 68.4%id, 30.1%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 10129680k total, 7539812k used, 2589868k free, 478612k buffers
Swap: 4194300k total, 0k used, 4194300k free, 5973136k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
22584 ora112 -2 0 837m 16m 14m S 100.0 3.7 74:09.62 oracle
3274 ora112 -2 0 837m 16m 14m S 1.0 0.2 211:11.85 oracle
6147 ora112 -2 0 837m 16m 14m S 1.0 0.2 19:25.63 oracle
7787 ora112 -2 0 837m 16m 14m S 1.0 0.2 62:43.66 oracle
10696 ora112 -2 0 2251m 16m 14m S 1.0 0.2 190:34.75 oracle
17198 ora112 -2 0 837m 16m 14m S 1.0 0.2 60:53.89 oracle
1874 root 20 0 13584 740 576 S 0.3 0.0 1:11.80 lldpad
3323 ora112 20 0 837m 18m 16m S 0.3 0.2 21:49.55 oracle
使用 PS 檢視程式的資訊
~ [OSMSRDB]$ ps -ef|grep 22584
ora112 15567 16186 0 11:06 pts/1 00:00:00 grep 22584
ora112 22584 1 1 Sep19 ? 01:14:13 ora_vktm_OSMSRDB
登陸資料庫,檢視等待事件
SELECT * FROM V$SESSION_WAIT WHERE WAIT_CLASS <> 'Idle' ORDER BY SECONDS_IN_WAIT DESC;
檢視資料庫正在執行的SQL,發現一直在執行的是DBMS_SCHEDULER模組,job名是OSMSR_OPERATION_DURATION
select s.SID,s.SERIAL#,MACHINE,TERMINAL, OSUSER, SCHEMANAME, PROGRAM,MODULE,ACTION,CLIENT_INFO,
decode(s.COMMAND,3,'SELECT',s.COMMAND) COMMAND,STATUS,SQL_ID,SQL_ADDRESS,SQL_EXEC_START,
DECODE(STATUS,'ACTIVE',LAST_CALL_ET,NULL) "SQL執行時間",EVENT,STATE,SECONDS_IN_WAIT,SERVICE_NAME
from V$SESSION s where s.USERNAME is not null AND WAIT_CLASS <> 'Idle';
檢視job
select job_name,state from dba_scheduler_jobs where state= 'RUNNING';
停止job
SQL> BEGIN
DBMS_SCHEDULER.STOP_JOB('OSMSR_OPERATION_DURATION');
END; 2 3
4 /
PL/SQL procedure successfully completed.
SQL> select job_name,state from dba_scheduler_jobs where state= 'RUNNING';
no rows selected
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2125355/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- ORACLE 11G 無法連線到資料庫例項故障排除Oracle資料庫
- 【故障公告】資料庫伺服器 CPU 100% 引發全站故障資料庫伺服器
- 【故障公告】資料庫伺服器 CPU 100% 造成全站故障資料庫伺服器
- Oracle資料庫伺服器IO高的分析方案和案例探討Oracle資料庫伺服器
- 【故障公告】資料庫伺服器再次 CPU 100% 引發全站故障資料庫伺服器
- 【故障公告】資料庫伺服器 CPU 100% 引發網站故障資料庫伺服器網站
- oracle資料庫CPU特別高的解決方法Oracle資料庫
- 故障分析 | 大量短時程式導致 cpu 負載過高案例一則負載
- CPU使用率低負載高負載
- 如何排除伺服器故障伺服器
- 【故障公告】訪問高峰資料庫伺服器 CPU 100% 引發全站故障資料庫伺服器
- 【故障公告】資料庫伺服器今年第六次 CPU 100% 故障資料庫伺服器
- 【故障公告】資料庫伺服器今年第七次 CPU 100% 故障資料庫伺服器
- oracle 11g vktm程式佔用CPU高 【轉載】Oracle
- ORACLE 資料庫11.2.0.4 單例項伺服器IO等待高問題分析Oracle資料庫單例伺服器
- mysql資料庫磁碟io高的排查MySql資料庫
- cpu負載是什麼意思 電腦cpu負載過高怎麼處理解決負載
- 資料庫伺服器故障資料庫伺服器
- 從業務角度分析奇怪的資料庫高負載問題資料庫負載
- 解決Oracle資料庫遷移後的伺服器負載效能問題JSOracle資料庫伺服器負載JS
- cpu使用率低負載高,原因分析負載
- Linux上檢視造成IO高負載的程式Linux負載
- 使用WebSphere中介軟體構建資料庫環境故障排除Web資料庫
- 資料庫高io問題調查資料庫
- 資料庫cpu高處理一則資料庫
- Oracle資料庫Redo故障的恢復Oracle資料庫
- Cisco高檔路由器故障排除(轉)路由器
- CPU 使用率低高負載的原因,看看這篇!負載
- 【Mysql】是什麼導致MySQL資料庫伺服器磁碟IO高?MySql資料庫伺服器
- 雲資料庫的雲端故障排除策略:關鍵技術與實施方案資料庫
- 新系統上線,10G 資料庫負載持續高資料庫負載
- MVCC缺陷與高負載PG資料庫最佳化要點MVC負載資料庫
- 磁碟IO故障導致的SQLServer資料庫無法寫入SQLServer資料庫
- ORACLE 11G負載均衡測試Oracle負載
- Oracle 11g資料庫Oracle資料庫
- 伺服器負載過高的處理方式伺服器負載
- Linux CPU負載Linux負載
- GoldenGate11g長交易造成CPU負載高Go負載