程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> Sql Server 代理錯誤日志知多少

Sql Server 代理錯誤日志知多少

編輯:關於SqlServer

       一 概述

      默認情況下,SQL Server 代理創建錯誤日志來記錄警告和錯誤。日志中顯示下列警告和錯誤:

      警告消息,提供有關潛在問題的信息,例如“作業 在執行時被刪除”。

      錯誤消息,通常需要系統管理員干預,例如“無法啟動郵件會話”。可以通過 net send 將錯誤消息發送給特定用戶或計算機。

      默認情況下,執行跟蹤消息不寫入 SQL Server代理日志錯誤,因為它們會將日志填滿。如果錯誤日志已滿,會降低選擇和分析更嚴重的錯誤的能力。因為日志會增加服務器的處理負荷,所以請務必仔細考慮是否值得將執行跟蹤消息捕獲到錯誤日志中。通常,最好僅在調試某個特定問題時捕獲所有消息。

      二 錯誤日志的存放目錄和個數

      SQL Server 最多可以維護 1個當前錯誤日志記錄 和 9個 SQL Server 代理錯誤日志歷史記錄。每個存檔日志都有一個擴展名,指示該日志的相對存在時間。例如,擴展名 .1 表示最新的存檔錯誤日志,而擴展名 .9 表示最舊的存檔錯誤日志。

      SQL Server 代理停止後,可以修改 SQL Server 代理錯誤日志的位置。如果錯誤日志為空,則無法打開日志。可以隨時循環訪問 SQL Server 代理日志,無需停止 SQL Server 代理。

      三 基本管理任務

      查看 SQL Server 代理錯誤日志 :企業管理器;通過openrowset讀取文件;xp_cmdshell下執行dos輸出的type命令等;xp_cmdshell下bcp進入數據庫系統的表中;exec xp_cmdshell 'type "C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLLOGSQLAGENT.out"'

      重命名 SQL Server 代理錯誤日志 ,重啟sql代理後生效 :企業管理器;EXEC msdb.dbo.sp_set_sqlagent_properties @errorlog_file=N'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLLOGSQLAGENT.OUT'

      發送 SQL Server 代理錯誤消息 ,使用net send 發送消息,依賴於windows的messenges 服務 :企業管理器;EXEC msdb.dbo.sp_set_sqlagent_properties @error_recipient=N'jinsen'

      將執行跟蹤消息寫入到 SQL Server 代理錯誤日志中 :配置sql代理,記錄跟蹤內容;

      配置代理錯誤日志的信息內容類型(錯誤 1、警告 2、信息(包含錯誤跟蹤) 4),類型可以疊加:企業管理器;EXEC msdb.dbo.sp_set_sqlagent_properties @errorlogging_level={1|2|4|3|5|7|6}

      配置代理錯誤日志的信息內容的編碼類型 :企業管理器;EXEC msdb.dbo.sp_set_sqlagent_properties @oem_errorlog={0|1}

      回收錯誤日志的空間 :使用企業管理器;EXEC msdb.dbo.sp_cycle_agent_errorlog

      配置代理錯誤日志文件記錄數的大小(行數):企業管理器;EXEC msdb.dbo.sp_set_sqlagent_properties @jobhistory_max_rows=1000,

      配置代理錯誤日志文件記錄每個作業的最大記錄的大小(行數):企業管理器;EXEC msdb.dbo.sp_set_sqlagent_properties @jobhistory_max_rows_per_job=100

      四 常見問題

      q:為什麼sql代理錯誤日志文件的內容始終為空,無法進行錯誤信息的日志記錄?

      a:重新配置sql代理錯誤日志文件的編碼格式為非oem——即配置為unicode編碼,可以解決問題

      q:為什麼在使用企業管理器查看sql代理錯誤日志時,日志查看器出現異常,“unicode file expected”?

      a:重新配置sql代理錯誤日志文件的編碼格式為非oem——即配置為unicode編碼,可以解決問題

      q:為什麼企業管理器、sms 無法回收sql2000的sql代理錯誤日志文件?

      a:sqlserver2000的sql 代理錯誤日志的文件 不支持回收!

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved