正在看的ORACLE教程是:Oracle捕獲問題SQL解決CPU過渡消耗。本文通過實際業務系統中調整的一個案例,試圖給出一個常見CPU消耗問題的一個診斷方法.大多數情況下,系統的性能問題都是由不良SQL代碼引起的,那麼作為DBA,怎樣發現和解決這些SQL問題就顯得尤為重要.
本案例平台為UNIX,所以不可避免的應用了一些Unix下常用的工具.如vmstat,top等.
本文適宜讀者范圍:中高級.
系統環境:
OS: Solaris8
Oracle: 8.1.7.4
問題描述:
開發人員報告系統運行緩慢,已經影響業務系統正常使用.請求協助診斷.
1.登陸數據庫主機
使用vmstat檢查,發現CPU資源已經耗盡,大量任務位於運行隊列:
2.使用Top命令 觀察進程CPU耗用,發現沒有明顯過高CPU使用的進程
3.檢查進程數量
發現系統存在大量Oracle進程,大約在300左右,大量進程消耗了幾乎所有CPU資源,而正常情況下Oracle連接數應該在100左右.