SQLServer的诊断信息的自动采集
我相信很多人都遇到过SQLServer问题,你不能
解决DBA或微软的售后问题
支持工程师帮助解决问题。他们通常需要你收集一些
系统信息和SQLServer的诊断信息。
这些信息的收集需要图形
工具,需要指导,
步骤非常复杂。
我们必须一步一步地收集所有我们需要的信息,在收集的过程中,我们
经常翻来覆去几次头痛。
解决问题的工具
这个问题是在SQL2005工具的出现解决了
该工具可以自动采集大量信息,
扩展原始
应用程序,提高信息采集能力。
这个工具是sqldiag.exe SQL代表:SQLServer的诊断是诊断(诊断)
SQLdiag这个工具可以收集信息:
(1)Windows事件日志
(2)SQL Server
错误日志,SQL的
配置信息,一些重要的
运行信息
(3)转储SQL生成的
文件 (4)
服务器系统配置信息
(5)同时包含系统和SQL
性能计数器的性能日志
(6)服务器端跟踪
这个工具可以帮助
管理员自动打开服务器端的痕迹,比SQLServer事件探查器更安全
由于SQLServer事件探查器是一个客户端跟踪工具和需要消耗的系统资源与服务器通信
进程间通信,该工具是一个服务器端的痕迹
SQLdiag工具
默认是
安装:C:程序文件微软SQL服务器 90 工具宾
C是我的SQL Server的安装
路径,我们选择不安装SQL Server的默认路径,你可以不喜欢我
使用工具
这个工具需要运行的
命令行窗口,可以直接在命令行运行 sqldiag.exe,该工具将使用默认配置收集系统信息
拖动sqldiag.exe的CMD窗口,按回车键开始。
详细步骤如下图
外观SQLdiag收集开始后。按Ctrl + C停止。信息,该工具的
执行是通过crtl + C.终止
SQLdiag工具产生三的XML文件在BINN
目录和子目录来存放产生SQLdiag刚刚收集到的信息
使用默认配置(即,该sqldiag.xml BINN目录下)只会接受:
(1)SQL错误日志文件的内容,以及SQL配置信息和一些重要的运行信息(xxxx_sp_sqldiag_shutdown。出)
(2)转储记录(xxxx_sqldumper_errorlog。日志)由SQL
(3)服务器系统配置信息(xxxx_msinfo32 .txt)
(4)SQL默认打开的默认跟踪文件(log_xxx。TRC)
使用配置文件
你可以使用两个其他SQLdiag XML配置文件,sd_general.xml和sd_detailed.xml,和这两个XML文件相同的目录中,SQLDiag.exe。
如果使用这两个配置文件,则可以收集SQL跟踪和性能日志。
但是,如果您想使用这两个配置文件,这些文件将更大,把它们放在SQL安装目录中已经不合适了。
在SQLDiag你需要指定输出文件的路径。
该示例是在CMD下
输入的:
格式:sqldiag.exe /我/ O
我用sd_general.xml配置文件和配置F: sqldiaout作为输出目录,不需要预先
创建的,他是最有助于你创建它。
sqldiag.exe /我sd_general.xml / O F: sqldiaout
在运行的过程中,你可以看到SQLdiag perfmon(addingperfmon计数器)开放和微量(
启动事件探查器跟踪)
当问题被跟踪时,日志集合将被Ctrl + C工具停止。
有些信息是在工具
关闭之前收集的,因此可能需要一段时间才能完全停止。
在F: sqldiaout目录下的目录,你可以看到以下信息
(1)SQL跟踪文件(xxxx_sp_trace。TRC)
(2)Windows事件日志(xxxx_applog_shutdown.txt,xxxx_seclog_shutdown.txt,xxxx_syslog_shutdown .txt)
(3)Windows性能日志(SQLdiag。BLG)也不是用性能监视器打开这个文件,通过使用系统带来的小工具。
总结
事实上,两个XML配置文件之间的主要
区别,sd_general.xml和sd_detailed.xml,是sd_detailed.xml将收集SQL跟踪事件。
所以产量会大得多。
DBA可以根据需要选择其中之一。
缺点:
SQLdiag的唯一的缺点就是系统管理视图DMV不定期
查询。
所以建议自动信息采集是SQLdiag(使用sd_general.xml和sd_detailed.xml为配置文件),并添加一些
系统动态管理视图辅助