SQLSERVER查看数据库日志方法和语句示例,已亲测。
首先需要查看日志大小:
EXEC sys.sp_enumerrorlogs; 可以获取存档编号(0指实时的),日期,日志大小
方法一
使用sql_devlopment工具;这里具体不在详细介绍了,很简单;
方法二
**使用自带的 xp_readerrorlog 过程 **
-
xp_readerrorlog 一共有7个参数:
-
- 存档编号 (EXEC sys.sp_enumerrorlogs)获取
-
- 日志类型(1为SQL Server日志,2为SQL Agent日志(也就是代理日志))
-
- 查询包含的字符串
+ 读取当前SQL Server错误日志并搜索文本“警告”
+ EXEC xp_ReadErrorLog 0, 1, N’Warning’
- 查询包含的字符串
-
- 查询包含的字符串
-
- LogDate开始时间
- 搜索2019年11月7日午夜至9 AM之间的关键字
+ EXEC xp_readerrorlog 0, 1, N’Recovery’, N’‘, N’2019-11-07 00:00:01.000’, N’2019-11-07 00:00:01.000’,N’2019-11-07 09:00:01.000’
-
- 结果排序,按LogDate排序(可以为降序”Desc” Or 升序”Asc”)
-
- 结果排序,按LogDate排序(可以为降序”Desc” Or 升序”Asc”)
-
以下为几个简单示例,供大家参考,核心为上访参数。
1)查询当前SQL Server日志信息
Exec xp_readerrorlog 0
Go
2)查询存档编号为n(n Between 0 And 99)的SQL Server日志信息
Exec xp_readerrorlog n
3)根据时间范围查询SQL Server日志信息
Exec xp_readerrorlog 1,1,Null,Null,‘20091126 20:10’,‘20091126 20:40’,‘Asc’
4)根据时间查看死锁
exec xp_readerrorlog 0,1,NULL,NULL,‘2016-10-24’,‘2016-10-30’,‘desc’
记录不易,您的关注是我的动力,谢谢