資料庫在執行的job kill掉程序後又自動啟動?

2021-10-23 22:49:22 字數 756 閱讀 8162

根據以下語句檢查 當前正在跑的sql,找到對應job的spid

select * from dba_job_running;
select distinct d.spid,a.sid,e.event,b.status,c.sql_id,c.sql_text,b.username,b.osuser,b.machine,b.program

from v$sess_io a,v$session b,v$sql c,v$process d,v$session_wait e

where a.sid=b.sid and b.sql_hash_value=c.hash_value and b.sid=e.sid

and b.paddr=d.addr and b.status='active' order by sql_text;

在主機上ps -ef|grep spid確認名稱為ora_j***格式程序號

此時kill -9 spid後,執行上述查詢語句,發現job有啟動新的程序。

這時需先備份原先建立job的指令碼,可通過pl/sql檢視**獲取,也可以用其它辦法。

備份後,刪除該job,

再在作業系統上kill -9 spid

最後檢查job已經被kill掉。

根據之前備份的指令碼重新建立job即可。

TSQL 刪除正在執行的資料庫

declare dbname nvarchar 200 set dbname db1 snap begin try 查詢當前資料庫所有連線並刪除 declare spid int declare tempsql nvarchar 200 判斷臨時表是否存在,存在則刪除 if object id te...

sqlserver 檢視資料庫正在執行的命令

在sql中有時候我們需要檢視現在正在sql server執行的命令。在分析管理器或者microsoft sql server management studio中,我們可以在 管理 sql server日誌 活動監視器 中檢視。今天我們主要利用master.sysprocesses系統表來檢視。先看...

資料庫作業的執行

每月執行的作業 exec p createjob jobname mm sql select from syscolumns freqtype month 每週執行的作業 exec p createjob jobname ww sql select from syscolumns freqtype ...