Sql Server 日志 和 代理错误日一般在实例重启后自动切换,如果实例久未重启,将可能积累太多的日志,不方便查看.
日志切换:(需要权限: sysadmin 固定服务器角色的成员)
-- "Sql Server 日志"切换exec msdb.dbo.sp_cycle_errorlog-- "代理错误日志"切换exec msdb.dbo.sp_cycle_agent_errorlog
日志查看:
-- 日志查看exec xp_readerrorlog @FileNum,@Type,@SearchText1,@SearchText2,@StartTime,@EndTime,@order@FileNum : 日志编号@Type : 查询类型(1:Sql Server 日志 ; 2:代理错误日志)@SearchText1 : 搜索文本@SearchText2 : 搜索文本(与 @SearchText1 为"与"关系)@StartTime : 日志查询起始时间@StartTime : 日志查询结束时间@order : 时间排序(ASC 或 DESC)
示例:
-- 查看当前"Sql Server 日志"死锁exec xp_readerrorlog 0,1,'deadlock victim',NULL,'2015-06-01','2015-06-30','desc' -- 查看第二个"Sql Server 日志" 文本中有 "error" 和 "Server" 的行exec xp_readerrorlog 1,1,'error','Server','2015-06-01','2015-06-30','asc' -- 查看当前"代理错误日志" 文本中有 "错误" 的行exec xp_readerrorlog 0,2,'错误',NULL,NULL,NULL,'desc'