找回密码
 注册
搜索
热搜: 超星 读书 找书
查看: 404|回复: 0

[【IT前沿】] SQL Server错误日志文档信息类型详解

[复制链接]
发表于 2010-4-28 08:36:28 | 显示全部楼层 |阅读模式
【赛迪网-IT技术报道】通过对错误日志信息的查看,用户可以了解到SQL服务器健康运行的状况,寻找到在运行过程中已经发生的隐形错误,并检查工作团队使用SQL服务器的状态等。对于刚开始使用SQL服务器系统的用户来说,更应当密切关注日志,从日志中找出错误日志选项,以发现SQL服务器运行过程中所出现错误的详细信息。

为让大家更好的了解SQL服务器错误日志项目,下面列举出一个基于SQL Server 2008的错误日志截屏,并提供该截屏的放大版以供分析。

  
用户可以从 “SQL服务器管理工作室(SQL Server Management Studio)”中打开“日志文档查看器”寻找到第一个截屏内容。所有日志文件项目是按照时间顺序由下至上排列的(也就是说,越早的文档日志越处于日志文档查看的下方)。真正的错误文章日志是文本文档,用户可以使用“记事本”或其他文档编辑器来阅读错误日志详细信息。在默认状态下,SQL服务器会记录过去的六个循环日志及当前日志。日志文档查看器会对日志文档做一些基本的分类。当然,用户可以自行将SQL日志和其他诸如Windows操作系统日志等进行合并,或自定义将这些日志进行细分分类。

1. 用户使用的SQL服务器版本信息:

日志中的第一行内容其实已经给予用户许多宝贵的故障检测信息。如果用户希望在微软 MSDN论坛上询问自己SQL服务器问题时(或向SQL服务支持团队询问相关问题时),专家小组第一个问题通常是:“请问您的SQL版本是什么?”而 SQL服务器版本信息就在第一行内容中。下面就以截屏上的第一行内容为大家做一个介绍:

我们可以在第一行内容中看到下列内容:

2010-04-08 16:24:13.21 Server Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (Intel X86)

Mar 29 2009 10:27:29

Copyright (c) 1988-2008 Microsoft Corporation

Developer Edition on Windows NT 6.1 (Build 7600: ) (VM)

很明显,我们现在正在使用的服务器系统是SQL Server 2008 SP1.但这仅是该服务器系统的主版本信息。专家小组还希望得到的是用户SQL服务器系统服务包的版本信息。具体的服务包版本信息隐藏在其后的 “10.0.2531.0”中。让我们具体的来分析一下这四个数字所表达的信息。其中“10.0”是主版本信息,在这个例子中代表的是“SQL Server 2008”,2531是说明用户是在本次开发循环中第2531次安装的该数据库服务器系统。(也就是说服务包版本信息为2531,这个数据对用户对咨询人员来说非常重要)。一般来说,SQL Server服务器系统的一个开发周期中安装的次数大约为2500次左右。具体的数据会随着开发循环的长短而有所改变。

如果用户有兴趣了解一下SQL服务器安装版本的具体配置方法等,可以在“微软知识库(Microsoft Knowledge Base)”中寻找编号为321185的文章。该文章中列举的SQL服务器版本配置举例一直可以追溯到SQL Server6.5版本。用户需要注意的是,当用户每对自己适用的SQL服务器版本进行一次升级或者修补程序加载后,服务包版本信息都会有所改变。比如说,如果用户的SQL服务包版本为10.0.2545.0,这说明用户在第一次运行SQL Server 2008 SP1后,已经多次对该服务器系统版本下载升级程序。如过用户有兴趣了解SQL服务器声明周期相关的知识,可以在“微软知识库”中查阅编号为935897 的文章。

接下来我们可以看到的版本信息是运行SQL服务器的中央微处理器的版本信息,其中可能有“x86,”“x64”或 “IA-64”三种。由本文例子中的“Developer Edition on Windows NT 6.1 ” 我们可知例子中的中央微处理器版本为“x86”。这里特别提醒用户注意的是,部分用户可能会错误的出现将SQL 服务器“x86”版本安装在“x64”系统下运行。这个错误极有可能会导致服务器运行内存不足等错误出现。至此,用户通过对SQL日志第一行信息的解读,已经基本可以掌握其运行的SQL服务器版本的相关信息。

在SQL版本方面最后要提醒用户注意的是,一定要注意区分自身运行的 SQL服务器究竟是“标准版”、“企业版”还是“简化版”。其中,“简化版”为免费版,微软公司对“简化版”的部分SQL服务器功能进行了限制。用户在使用“简化版”时也经常会看到相应的升级提醒。

2. SQL服务器进程身份验证(Server Process ID)信息:

在本文所使用的例子中,SQL服务器进程身份验证为“1716”。SQL服务器进程身份验证所所能提供的是SQL服务器究竟是在哪一种Windows操作系统下运行的详细信息。用户可以通过在网络上下载“进程监视器(Process Monitor)”查阅自身SQL服务器所在的Windows操作系统平台信息。用户下载并安装“进程监视器”后,使用“筛选”命令符即可查看进程身份验证(PID),下面给出的例子就是使用“进程监视器”查看SQL服务器进程身份验证列表截图:
  
用户通过对该列表的查看,可以了解到在Windows操作系统下的SQL服务器后台程序运行的相关信息。如果用户正在对SQL服务器安全问题进行检查(如为何链接SQL服务器的备份文件夹时遭到拒绝?等)或正在进行相关内存管理操作,能够从操作系统层面上了解SQL服务器程序后台进程信息至关重要。

另外 ,如果用户在同一个Windows操作系统下安装并运行了数个SQL服务器系统,用户应当把SQL服务器进程身份验证(PID)添加到任务管理器中。否则,用户在打开任务管理器查看相关程序运行信息时,会发现有众多的纷杂的sqlservr.exe程序正在运行,如果这些SQL执行程序并未加载PID,用户很难寻找到目标SQL服务器运行信息。

用户可以通过下列操作步骤完成“在任务管理器中添加SQL服务器进程身份验证(PID)”:

1. 打开“进程(Processes)”标识>在“视图”菜单中选择“选择列(Select Columns )”。这时会打开“选择进程页列(Select Process Page Columns )对话框。

2. 点击“进程身份验证(PID)”复选框,点击“确定(OK)”

完成上述步骤后,用户会发现各个进程身份验证(PID)将显示在进程列表中。其截图如下:
  
3. 身份验证模式信息:

用户应当在SQL服务器错误日志中注意的第三类信息是身份验证模式信息。这类信息可以向用户展现其所操作的SQL服务器运行实例是仅允许以“Windows安全模式账户”登录还是可以同时允许使用“SQL服务器账户”登录。在本文所列举的例子中,仅允许使用“Windows安全模式账户”,我们可以在SQL服务器日志中看到“身份验证模式仅允许Windows账户(Authentication mode is WINDOWS-ONLY)”的信息。

如果SQL服务器运行实例同时允许两种账户登录,那么我们可以在SQL服务器日志中看到“身份验证模式为混合模式(Authentication mode is MIXED)”的信息。

4. 启动参数信息:

用户应当在SQL服务器错误日志中注意的第四类信息是启动参数信息。在SQL日志中,会详细列举出用户SQL服务器的启动参数。对于SQL服务器运行实例来说,启动参数的设置至关重要。如果该设置出现错误,用户无法启用SQL服务器相关功能。下面列举出的就是本文例子中SQL服务器日志所提供出的启动参数:

Server Registry startup parameters:

(服务器注册表启动参数):

-d C:\\Program Files\\Microsoft SQL Server\\MSSQL10.MSSQLSERVER\\MSSQL\\DATA\\master.mdf

(-d参数所标注的是主数据库文档所在的位置信息)

-e C:\\Program Files\\Microsoft SQL Server\\MSSQL10.MSSQLSERVER\\MSSQL\\Log\\ERRORLOG

(-e 参数所标注的是写入的错误日志文档所在的位置信息)

-l C:\\Program Files\\Microsoft SQL Server\\MSSQL10.MSSQLSERVER\\MSSQL\\DATA\\mastlog.ldf

(-l 参数所标注的是主数据库事务日志文档所在的位置信息)

如果SQL服务器的上述三个参数设置不正确,那么用户无法进行SQL服务器的相关操作。另外,用户可以对许多其他SQL启动参数进行自定义指定操作。一般说来,用户只有在安装SQL服务器系统时选择“自定义安装”或者有特殊需要使用 “SQL服务器产品支持解决方案”时,才可以使用其他附加SQL服务器启动参数。有兴趣的用户可以在MSDN的“SQL Server 2008在线丛书”中寻找“使用SQL服务器启动选项”等相关文献,了解其他附加SQL启动参数的相关性能及操作。

这里着重介绍的一种是SQL附加启动参数是:跟踪标识(Trace flags,-T)参数。用户可以通过根据在线文献中所列举的启动“跟踪标识”程序来完成该参数的添加。添加操作完成后,用户可以在SQL服务器日志中找到带有(-T)标识的日志文档。如果用户并未进行启动“跟踪标识”的操作,但却在SQL服务器日志中查找到带有(-T)标识的日志文档,那么很可能已经发生下列两种状况:1. 微软SQL服务团队成员认为您的SQL服务器需要增添该标识进行特殊行为管理,而将“跟踪标识”添加到的您的SQL服务器上;2、您的SQL服务器管理员认为“跟踪标识”很重要,而进行了自行添加操作。不管是哪种情况,用户需要在改变或删除SQL服务器“跟踪标识”前,彻查该启动标识出现在日志文档中的原因。

(责任编辑:尹聪颖)

http://tech.ccidnet.com/art/1105/20100426/2043791_1.html

日记记录是非常重要的一件事。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|网上读书园地

GMT+8, 2024-6-8 16:54 , Processed in 0.413545 second(s), 4 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表