数据吧www.shujuba.net - 专注于企业级云服务器、云计算、网站高防CDN加速、服务器租用托管服务 - 站长资讯中心

数据吧 - 致力提供Linux(CentOS),Win2003,Win2008系统基础资料、vps云服务器安全防护知识、以及PHP,ASP环境搭建等。为各大中小站长、公司企业网站、虚拟主机、香港美国韩国日本台湾vps云服务器用户以及初学者或爱好者提供有用的资料文章。帮助大家学习和收集有用的教程。我们的宗旨是为大众站长提供优质的服务。

sql server错误日志errorlog的深入分析及对应代码

 一 .概述
 SQL Server 将某些系统事件和用户定义事件记录到 SQL Server 错误日志和 Microsoft Windows 应用程序日志中。 这两种日志都会自动给所有记录事件加上时间戳。 使用 SQL Server 错误日志中的信息可以解决SQL Server的相关问题。
 
查看 SQL Server 错误日志可以确保进程(例如,备份和还原操作、批处理命令或其他脚本和进程)成功完成。 此功能可用于帮助检测任何当前或潜在的问题领域,包括自动恢复消息(尤其是在 SQL Server 实例已停止并重新启动时)、内核消息或其他服务器级错误消息。
 
使用 SQL Server 或任何文本编辑器可以查看 SQL Server Management Studio 错误日志。默认情况下,错误日志位于 Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG\ERRORLOG 和 ERRORLOG.n 文件中。例如: 我电脑win7上将sql server 2008 r2数据库安装在D:\Program Files目录下,错误日志路径为 D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Log
 
每当启动 SQL Server 实例时,将创建新的错误日志信息,sqlserver系统自动调用 exec sp_cycle_errorlog 系统存储过程,该存储过程会关闭当前的错误日志文件,并循环错误日志扩展编号来循环使用错误日志文件,而不必重新启动 SQL Server实例 (区别mysql下 有四种日志文件,文件会一直增长,需要管理员去清除,避免影响磁盘空间) 。通常, SQL Server 保留前六个日志的备份, 按照时间顺序,依次用文件扩展名.1 .2…  .6表示。每重启一次服务,文件扩展名都会加一, 最早那份会被删除。
 
二. Errorlog日志内容
 
2.1  日志自动记录的信息大概有如下:
 
   (1) SQL SERVER 的启动参数,以及认证模式,内存分配模式。
 
   (2) 每个数据库是否能够被正常打开。如果不能,原因是什么?
 
   (3) 数据库损坏相关的错误
 
   (4) 数据库备份与恢复动作记录
 
   (5) DBCC CHECKDB记录
 
   (6) 内存相关的错误和警告
 
   (7) SQL调度出现异常时的警告。一般SERVER Hang 服务器死机会伴随着有这些警告
 
   (8) SQL I/O操作遇到长时间延迟的警告
 
   (9) SQL在运行过程中遇到的其他级别比较高的错误
 
   (10) SQL内部的访问越界错误(Access Violation)
 
   (11) SQL服务关闭时间
 
   (12) SQL SERVER版本,以及windows和processor基本信息。
 
2.2  日志开启跟踪能看到的信息
 
   (1) 所有用户成功或失败的登入
 
   (2) 死锁及其参与者的信息。跟踪标志1222 或1204
 
2.3 日志不能记录的问题
 
   (1) 阻塞问题。只要阻塞还没有严重到影响线程调度,日志里是不会体现的。
 
   (2) 普通性能问题,超时问题。
 
   (3) windows层面异常。
 
所以在检查sqlserver 相关问题的时候,总是从error log着手,如果error log里有一些错误或警告,就要确认排查,如果记录问题的时间与软件系统出问题时间对得上,就需要着重分析。
 
三 .跟踪标志

 
使用DBCC TRACEON来指定要打开的跟踪标记的编号,跟踪标记用于通过控制 SQL Server 的运行方式来自定义某些特征。 启用的跟踪标记将在服务器中一直保持启用状态,直到执行 DBCC TRACEOFF 语句将其禁用为止。在 SQL Server 中,有两种跟踪标志:会话和全局。 会话跟踪标志对某个连接是有效的,只对该连接可见。 全局跟踪标志在服务器级别上进行设置,对服务器上的每一个连接都可见。 若要确定跟踪标记的状态,请使用 DBCC TRACESTATUS。 若要禁用跟踪标记,请使用 DBCC TRACEOFF。
 

«1»

Powered By 站长资讯中心

站长资讯中心为您提供各类站长资讯,站长资料,我们的宗旨是为大众站长服务。您将在这里得到最新、最全、最专业的行业资讯及网站建设技术文档!