[英]SQL Server Agent Jobs Crashing
在 SQL Server 2005 上運行 Windows 2003,大約每小時運行一次(在不同時間)約 85-90 個作業,為服務器上托管的每個網站生成新站點地圖,以及未發布的頁面。
我在服務器上遇到的問題是,服務器似乎分三個階段運行,作業在每天上午 8 點到下午 6 點之間運行,服務器每天早上 2 點到 3 點左右重新啟動。
一旦作業在早上開始,它們將成功運行大約 90 分鍾(上午 9 點 30 分),大約需要 3-5 秒才能完成作業。
9.30 之后,作業將正常啟動,然后卡在執行中(使用 100% CPU)。
如果我手動停止作業,服務器會恢復正常,但作業將完全無法執行,並拋出以下錯誤。 (他們改為每 60 分鍾運行一次,幾個月前不是每 15 分鍾運行一次,但名稱從未更改過)
Step ID 1
Server [Server Name]
Job Name Execute Replicate File For [website] web
Step Name Vbscript for Replicate File every 15Minutes
Duration 00:00:00
Sql Severity 0
Sql Message ID 0
Operator Emailed
Operator Net sent
Operator Paged
Retries Attempted 0
Message
Executed as user: [Domain]\[User]. The step did not generate any output.
The step failed.
有關正在運行的腳本的信息:它是一個 VBScript
Dim IEObj
Set IEObj=CreateObject("InternetExplorer.Application")
IEObj.Navigate "[weblink]/ReplicateFile.asp"
IEObj.visible=false
do Until IEObj.ReadyState=4
loop
IEObj.quit
Set IEObj=Nothing
@mellamokb - 該腳本在常規設置中作為 ActiveX 腳本而不是 T-SQL 腳本關閉,因此我無法為錯誤指定 output 文件。
注意:我沒有在此服務器或它正在復制的 CMS 上設置任何東西,而且我對數據庫的了解相當低。
我的猜測是您在瀏覽器中顯示的頁面 [weblink]/ReplicateFile.asp 至少在一個會話中出錯。
代碼
do Until IEObj.ReadyState=4
loop
運行時會導致大量的 CPU 使用率。 而且,更重要的是,如果瀏覽器永遠不會進入 ReadyState 4,這段代碼將永遠運行下去。 如果其中三個中的兩個卡住,您將看到服務器上的 CPU 使用率為 100%。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.