正在读取 SQL 服务器日志文件
Reading SQL SERVER Log file
我的 SQL Server 2008 R2 生产服务器发生中断并完全停机。我们必须重新启动 VM 才能使其恢复运行。该服务器上有多个作业 运行,我怀疑是由于并发问题导致服务器宕机。但是,为了了解根本原因,我在我的服务器上使用了以下函数:
select [Current LSN],
[Operation],
[Transaction Name],
[Transaction ID],
[Transaction SID],
[SPID],
[Begin Time]
FROM ::fn_dblog(null,null)
但是,它显示的是重启后发生的交易。你们能建议任何方法来了解根本原因吗?提前致谢。
您可能想查看 ERRORLOG,而不是日志。
日志放错地方有很多原因:
- 每个数据库一个日志。所以你不能查看 the 日志,而是查看一个日志。
- 日志不适合人类阅读
- 日志没有抓取错误信息
另一方面,出于以下几个原因,ERRORLOG 是正确的位置:
- 整个服务器只有一个ERRORLOG
- ERRORLOG 是供人类阅读的文本
- 错误和异常可能在 ERRORLOG
中被追踪
有关于Viewing the SQL Server Error Log的文章,但我的建议是简单地在记事本中打开错误日志并阅读。请记住,错误日志是 循环 因此在上次服务器重新启动时,旧错误日志被重命名为 ERRORLOG.1 并打开了一个新的 ERRORLOG。如果发生多次重启,则相关的错误日志可能更早,如 ERRORLOG.2、ERRORLOG.3 等。您需要根据时间确定正确的错误日志。错误日志中的每个条目都带有时间戳。查找接近事件发生时间的条目。
很可能崩溃的原因记录在 ERORRLOG.1 的末尾
我的 SQL Server 2008 R2 生产服务器发生中断并完全停机。我们必须重新启动 VM 才能使其恢复运行。该服务器上有多个作业 运行,我怀疑是由于并发问题导致服务器宕机。但是,为了了解根本原因,我在我的服务器上使用了以下函数:
select [Current LSN],
[Operation],
[Transaction Name],
[Transaction ID],
[Transaction SID],
[SPID],
[Begin Time]
FROM ::fn_dblog(null,null)
但是,它显示的是重启后发生的交易。你们能建议任何方法来了解根本原因吗?提前致谢。
您可能想查看 ERRORLOG,而不是日志。
日志放错地方有很多原因:
- 每个数据库一个日志。所以你不能查看 the 日志,而是查看一个日志。
- 日志不适合人类阅读
- 日志没有抓取错误信息
另一方面,出于以下几个原因,ERRORLOG 是正确的位置:
- 整个服务器只有一个ERRORLOG
- ERRORLOG 是供人类阅读的文本
- 错误和异常可能在 ERRORLOG 中被追踪
有关于Viewing the SQL Server Error Log的文章,但我的建议是简单地在记事本中打开错误日志并阅读。请记住,错误日志是 循环 因此在上次服务器重新启动时,旧错误日志被重命名为 ERRORLOG.1 并打开了一个新的 ERRORLOG。如果发生多次重启,则相关的错误日志可能更早,如 ERRORLOG.2、ERRORLOG.3 等。您需要根据时间确定正确的错误日志。错误日志中的每个条目都带有时间戳。查找接近事件发生时间的条目。
很可能崩溃的原因记录在 ERORRLOG.1 的末尾