用oradebug掛起程式
oradebug可以幫助我們做很多事情,如dump記憶體資訊、設定事件、掛起程式等。本文主要介紹如何使用oradebug掛起程式。
為什麼要掛起程式呢?比如因為開發人員對資料庫執行一個很大的操作,嚴重影響了資料庫的正常執行,此時你有兩個選擇:
1、刪掉程式
2、暫停程式
實際上,我們往往不能十分確定把程式直接kill掉會造成什麼後果,所以暫停程式的執行就是一個比較折中的選擇。
要暫停程式步驟很簡單:首先找到程式,然後暫停就可以了。
使用oradebug暫停程式時,可以使用pid,也可以使用spid。要找出這些資訊有很多方式了,比如可以在作業系統中 ps -ef、可以透過v$session、v$process、v$bgprocess等檢視透過關聯得到。
下面透過一個例子來說明如何oradebug干預程式的執行狀態:
1、找出程式號
本例我們要掛起以使用者suk登入的會話:
以sys使用者登入查詢:
SQL> select pid,spid from v$process where addr in (select paddr from v$session where username='SUK');
PID SPID
---------- ------------
10 4107
2、設定要操作的程式號
有兩種方法:
1)用spid設定
SQL> oradebug setospid 4107
Oracle pid: 10, Unix process pid: 4107, image: (TNS V1-V3)
2)用pid設定
SQL> oradebug setorapid 10
Unix process pid: 4107, image: (TNS V1-V3)
3、暫停程式執行
SQL> oradebug suspend
Statement processed.
此時,程式號為4107的程式將會處於掛起狀態。我們稍後可以重啟它。
4、重啟程式
重啟程式也要先設定程式號:
SQL> oradebug setospid 4107
Oracle pid: 10, Unix process pid: 4107, image: (TNS V1-V3)
SQL> oradebug resume
Statement processed.
注意:不能在會話中suspend當前會話。如果那樣做的話,當前會話會被hang,並且不能被其他session resume,只能kill方式關閉。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/231499/viewspace-366361/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 使用oradebug掛起程式
- 【體系結構】Oracle資料提交與事務隔離實驗 oradebug掛起lgwr程式Oracle
- 7.6 實現程式掛起與恢復
- OGG複製程式掛起abended處理
- 用Oracle跟蹤診斷掛起的會話Oracle會話
- db2表掛起DB2
- 又一起.NET程式掛死, 用 Windbg 抽絲剝繭式的真實案例分析
- 10g bug 偵聽掛起 兩個偵聽程式
- [oradebug命令學習1]Using ORADEBUG Utility
- win10 恢復掛起程式方法 win10如何取消軟體掛起狀態Win10
- 低程式碼應用程式開發開始興起
- oracle程式異常中止時登入掛起問題的解決Oracle
- RAC因為localhost磁碟空間不夠導致has程式掛起localhost
- Linux中執行緒的掛起與恢復(程式暫停)Linux執行緒
- ORACLE EVENT && ORADEBUGOracle
- Oracle oradebug命令Oracle
- oradebug詳解
- 用oradebug short_stack及strace -p分析oracle程式是否dead或出現故障Oracle
- kotlin協程的掛起suspendKotlin
- Switch log 掛起的小問題
- 解除分散式事務的掛起分散式
- 讓Web應用程式飛起來的祕訣Web
- oradebug命令詳解
- ORADEBUG使用詳解
- oradebug分析oracle hangOracle
- (轉)Oracle EVENT && ORADEBUGOracle
- Oracle Debug ---- oradebugOracle
- ipcs / oradebug ipc / sysresv
- 3.5 掛起和恢復資料庫資料庫
- _11_GCD相關-掛起/恢復GC
- 執行緒的掛起與恢復執行緒
- [oradebug命令學習2]How to Use Oradebug to Get Trace File Name and Location
- [-Flutter外掛篇 1-] 從自定義外掛開始說起Flutter
- 安裝 SQL 2000掛起問題SQL
- Linux 系統程序掛起與恢復Linux
- oracle oradebug使用詳解Oracle
- 使用Oradebug修改Oracle SCNOracle
- oracle實用工具:oradebugOracle