xp_readerrorlog 一共有7个参数:
1. 存档编号
2. 日志类型(1为SQL Server日志,2为SQL Agent日志)
3. 查询包含的字符串
4. 查询包含的字符串
5. LogDate开始时间
6. 结果排序,按LogDate排序(可以为降序"Desc" Or 升序"Asc")
7. 结果排序,按LogDate排序(可以为降序"Desc" Or 升序"Asc")
1.查询当前SQL Server日志信息
Exec xp_readerrorlog 0
Go
Go
2.查询存档编号为n(n Between 0 And 99)的SQL Server日志信息
Exec xp_readerrorlog n
e.g. 查询存档编号为2的SQL Server日志信息:
Exec xp_readerrorlog 2
Go
Go
3.根据时间范围查询SQL Server日志信息
Exec xp_readerrorlog 1,1,Null,Null,'20091126 20:10','20091126 20:40','Asc'
很奇怪,在输入第5和第6个参数的时候,使用时间里包含有秒、毫秒时候,有时候查询速度非常慢,而且导致CPU占用率为100%。
我在SQL2005和SQL2008上测试都存在这样的问题。
4.查询SQL Agent 当前日志信息
Exec xp_readerrorlog 0,2