SQL Server 錯誤日志收縮(ERRORLOG)


一、基礎知識

默認情況下,錯誤日志位於 :

C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\ERRORLOG

和ERRORLOG.n 文件中。默認保留有7個 SQL Server 錯誤日志文件,分別是:ErrorLog,Errorlog.1~Errorlog.6 ,當前的錯誤日志(文件ErrorLog)沒有擴展名。每當啟動 SQL Server 實例時,將創建新的錯誤日志ErrorLog,並將之前的ErrorLog更名為ErrorLog.1,之前的ErrorLog.1更名為ErrorLog.2,依次類推,原先的ErroLog.6被刪除。

 

二、收縮Errorlog文件

生產服務器上的ErrorLog文件有時候會碰到文件很大的情況,尤其將登錄認證情況記錄到錯誤日志的情況之下,此時使用SQL Server Management Studio或者文本編輯器查看錯誤日志查看的時候速度會是個問題,對於這種情況,可以在不重新啟動服務器的情況下,通過存儲過程sp_cycle_errorlog來生成新的日志文件,並循環錯誤日志擴展編號,就如同重新啟動服務時候一樣。除了 Execute sp_cycle_errorlog之外,也可以使用DBCC ERRORLOG來實現同樣的功能。在實際操作中,也可以通過建立一個Job定時去執行該存儲過程,這樣將日志文件大小控制在合理的范圍之內。

注意事項:舊的 ErrorLog 文件中的數據將被覆蓋!如果必須保存舊的 ErrorLog 文件中的數據,則可將這些舊的 ErrorLog 文件復制到某個外部存儲介質中。

Exec('DBCC ErrorLog')  或 exec sp_cycle_errorlog,或者可以通過以下命令,將sp 放在Job中定期執行。

 

三、Errorlog其它配置

(一) SQL Server默認保留7次錯誤日志文件,在產生新的錯誤日志的同時,最老的那個日志也被刪除了,如果想保留更多次的錯誤日志,可以通過如下方法來設置(SQL Server 2005):

  • 打開 SQL Server Management Studio
  • 在“管理”目錄下,在SQL Server日志上右鍵,點擊“配置”
  • 在彈出的“配置SQL Server錯誤日志”窗口中,在“限制錯誤日志文件在回收之前的數目”復選框上打勾,並且將“最大錯誤日志文件數”設置為希望的數值。這個數值在6到99之間。

F1.修改日志文件數

(Figure1:錯誤日志文件數0~99)

除了上述方法之外,也可以通過修改注冊表的方式來修改。

新建一個注冊表項(如果有則修改之):

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSSQLServer/MSSQLServer/NumErrorLogs,默認情況下,並沒有這個注冊表項,類型選擇REG_DWORD,數值設置為希望保留的日志次數。修改注冊表項的方法也可以通過以下存儲過程來實現:

exec xp_instance_regwrite N'HKEY_LOCAL_MACHINE', N'Software/Microsoft/MSSQLServer/MSSQLServer',N'NumErrorLogs', REG_DWORD, 20

(二) 在默認情況下,SQLServer的錯誤日志位於: Program Files/Microsoft SQL Server/MSSQL.n/MSSQL/LOG/ERRORLOG和ERRORLOG.n 文件中。可以通過如下方法來修改該路徑:

  • 在 SQL Server 配置管理器中,單擊“SQL Server 服務”。
  • 在右窗格中,右鍵單擊 SQL Server (<實例名>),再單擊“屬性”。
  • 在“高級”選項卡的“啟動參數”框中,有以分號 (;) 分隔的參數。其中,有一個以 –e開頭的參數,修改該參數后面的路徑,就可以將錯誤日志存放到指定的路徑下,修改完成需要重啟服務生效。

F2.修改路徑

(Figure2:ErrorLog文件路徑)

(三) 如果想對錯誤日志文件進行過濾查詢的話,可以參考:SQL Server 錯誤日志過濾(ERRORLOG)

 

四、參考文獻

關於 SQL Server ErrorLog 錯誤日志

SQL Server ErrorLog 錯誤日志(如果數據庫所占空間變大)

診斷SQLSERVER問題常用的日志

SQLSERVER errorlog講解


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM