• 欢迎访问水熊虫网站,这里是我个人的工作博客,内容大多是遇到问题完善后,会在这里进行总结归纳内容! QQ群
  • 网站导航中的友情链接专栏上线,更新的都是自己这三年整理的一些东西,感兴趣可以看看!
  • 你所浪费的今天,是昨天死去的人奢望的明天。你所厌恶的现在,是未来的你回不去的曾经!

教你管理SQLServer实例(3)查看启动日志

MSSQL WaterBear 7年前 (2017-05-04) 638次浏览 已收录 扫描二维码

教你管理SQLServer实例(3)查看启动日志

一、基本参数
  SQL Server引擎的启动选项默认使用3个基本参数。
(1) -d
  指定了 master 数据库的数据文件的完全限定路径。通常为 C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\maste.mdf 。

(2) -e
  指定了错误日志文件的完全限定路径。通常为 C:\Program Files\Micorosft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG 。

(3) -l
  指定了 master 数据库的日志文件的完全限定路径。通常为 C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\mastlog.ldf 。

二、设置启动选项
  安装SQL Server时,安装程序将把一组默认的启动选项写入Windows注册表。如果没有在启动选项中提供上述3个参数,则使用现有的注册表参数。
  可以使用 SQL Server 配置管理器设置启动选项。SQL Server 2012 与前面的版本稍有差异。

      例如,SQL Server 2008 R2如下图:

教你管理SQLServer实例(3)查看启动日志

SQL Server 2012 更加简化、便捷,如下图所示:

教你管理SQLServer实例(3)查看启动日志

三、查看错误日志文件  

        每次启动 SQL Server 时,都会循环错误日志扩展编号:将当前错误日志重命名为 errorlog.1;errorlog.1 变为 errorlog.2,errorlog.2 变为 errorlog.3,依次类推。最后生成一个新的ERRORLOG 文件。
  当发现SQL Server数据库引擎无法启动,应当首先检查错误日志文件。
  如果SQL Server实例已经启动,则可以通过系统存储过程 sp_readerrorlog 查看错误日志文件。
  错误日志文件示例如下:

2013-08-05 21:05:08.70 Server      Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64) 
Apr  2 2010 15:48:46 
Copyright (c) Microsoft Corporation
Standard Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)
2013-08-05 21:05:08.74 Server      (c) Microsoft Corporation.
2013-08-05 21:05:08.74 Server      All rights reserved.
2013-08-05 21:05:08.74 Server      Server process ID is 2560.
2013-08-05 21:05:08.74 Server      System Manufacturer: 'Dell Inc.', System Model: 'PowerEdge R510'.
2013-08-05 21:05:08.74 Server      Authentication mode is MIXED.
2013-08-05 21:05:08.75 Server      Logging SQL Server messages in file 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG'.
2013-08-05 21:05:08.76 Server      This instance of SQL Server last reported using a process ID of 2572 at 8/5/2013 9:02:22 PM (local) 8/5/2013 1:02:22 PM (UTC). This is an informational message only; no user action is required.
2013-08-05 21:05:08.76 Server      Registry startup parameters: 
  -d D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\master.mdf
  -e D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG
  -l D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\mastlog.ldf
2013-08-05 21:05:08.82 Server      SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.
2013-08-05 21:05:08.83 Server      Detected 24 CPUs. This is an informational message; no user action is required.

如果 ERRORLOG 太多,想要截断,怎么办?
sp_cycle_errorlog 关闭当前的错误日志文件,并循环错误日志扩展编号(就像重新启动服务器)。
可使您循环访问错误日志文件,而不必停止和启动服务器。 新错误日志包含版本和版权信息,以及表明新日志已创建的一行。

截断后的ERRORLOG示例:

2013-09-27 16:09:31.95 spid52      Microsoft SQL Server 2008 R2 (SP1) - 10.50.2500.0 (Intel X86) 
Jun 17 2011 00:57:23 
Copyright (c) Microsoft Corporation
Developer Edition on Windows NT 6.0 <X86> (Build 6002: Service Pack 2) (Hypervisor)
2013-09-27 16:09:31.95 spid52      (c) Microsoft Corporation.
2013-09-27 16:09:31.95 spid52      All rights reserved.
2013-09-27 16:09:31.95 spid52      Server process ID is 1696.
2013-09-27 16:09:31.95 spid52      System Manufacturer: 'VMware, Inc.', System Model: 'VMware Virtual Platform'.
2013-09-27 16:09:31.95 spid52      Authentication mode is MIXED.
2013-09-27 16:09:31.95 spid52      Logging SQL Server messages in file 'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log\ERRORLOG'.
2013-09-27 16:09:31.95 spid52      The error log has been reinitialized. See the previous log for older entries.

如果SQL Server 已经启动,则可以在SSMS中查看日志。如下图所示:

教你管理SQLServer实例(3)查看启动日志

数据库有问题要查看errorlog,查看错误日志可以使用sp_readerrorlog命令,截断日志可以使用DBCC ERRORLOG!

转载文章地址:http://bbs.51cto.com/thread-1075366-1.html


WaterBear , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:教你管理SQLServer实例(3)查看启动日志
喜欢 (0)
[[email protected]]
分享 (0)