SQL Server 2008 R2 跟踪标志

原文:SQL Server 2008 R2 跟踪标志

跟踪标志用于临时设置特定服务器的特征或关闭特定行为。例如,如果启动 SQL Server 的一个实例时设置了跟踪标志
3205,将禁用磁带机的硬件压缩。跟踪标志经常用于诊断性能问题,或调试存储过程或复杂的计算机系统。

下表列出了 SQL Server 中可用的跟踪标志,并进行了说明。

260
 打印有关扩展存储过程动态链接库 (DLL) 的版本控制信息。有关 __GetXpVersion()
的详细信息,请参阅创建扩展存储过程。

作用域:全局或会话
 
1204
 返回参与死锁的锁的资源和类型,以及受影响的当前命令。

作用域:仅全局
 
1211
 基于内存不足或基于锁数禁用锁升级。SQL Server
数据库引擎不会将行锁或页锁升级到表锁。

使用此跟踪标志可生成过多的锁数目。这样会降低数据库引擎的性能,或因为内存不足而导致 1204
错误(无法分配锁资源)。有关详细信息,请参阅锁升级(数据库引擎)。

如果同时设置了跟踪标志 1211 和 1224,则 1211 优先于
1224。但是,由于在所有情况下(甚至在内存紧张的情况下)跟踪标志 1211 都禁止升级,因此建议使用
1224。这有助于在使用多个锁时避免“锁不足”错误。

作用域:全局或会话
 
1222
 以不符合任何 XSD 架构的 XML
格式,返回参与死锁的锁的资源和类型,以及受影响的当前命令。

作用域:仅全局
 
1224
 基于锁数禁用锁升级。但是,内存不足仍可激活锁升级。如果锁对象使用的内存量超出下列条件之一,数据库引擎会将行锁或页锁升级为表(或分区)锁:

数据库引擎所用内存的 40%,使用地址窗口化扩展插件 (AWE) 的内存分配除外。只有在 sp_configure 的
locks 参数设置为 0 时,这才适用。

使用 sp_configure 的 locks 参数配置的锁内存的 40%。有关详细信息,请参阅设置服务器配置选项。

如果同时设置了跟踪标志 1211 和 1224,则 1211 优先于
1224。但是,由于在所有情况下(甚至在内存紧张的情况下)跟踪标志 1211 都禁止升级,因此建议使用
1224。这有助于在使用多个锁时避免“锁不足”错误。

注意
也可以使用 ALTER TABLE 语句的 LOCK_ESCALATION 选项控制到表级或 HoBT 级粒度的锁升级。
作用域:全局或会话
 
2528
 禁用 DBCC CHECKDB、DBCC CHECKFILEGROUP 和 DBCC
CHECKTABLE
执行的对象并行检查。默认情况下,并行度由查询处理器自动确定。最大并行度的配置就像并行查询的最大并行度一样。有关详细信息,请参阅 max
degree of parallelism 选项。

通常应使并行 DBCC 保持启用状态。对于 DBCC
CHECKDB,查询处理器重新求值,并对检查的每个表或每批表自动调整并行度。有时,检查可能在服务器几乎处于空闲状态时启动。如果管理员知道在检查完成前负载将增加,则可能需要手动减小并行度或禁用并行度。

禁用对 DBCC 的并行检查可能导致 DBCC 的完成时间变长,如果运行 DBCC 时启用了 TABLOCK
功能并关闭了并行度,则表可能被锁定更长时间。

作用域:全局或会话
 
3205
 默认情况下,如果磁带机支持硬件压缩,则 DUMP 或 BACKUP
语句会使用该功能。利用此跟踪标志,可以禁用磁带机的硬件压缩。此选项在您需要与不支持压缩的其他站点或磁带机交换磁带时很有用。

作用域:全局或会话
 
3226
 默认情况下,每个成功的备份操作都会在 SQL Server
错误日志和系统事件日志中添加一个条目。如果非常频繁地创建日志备份,这些成功消息会迅速累积,从而产生一个巨大的错误日志,使查找其他消息变得非常困难。

使用这一跟踪标志,可以取消这些日志条目。如果您频繁地运行日志备份,并且没有任何脚本依赖于这些条目,则这种做法非常有用。
 
3608
 禁止 SQL Server 自动启动和恢复除 master
数据库之外的任何数据库。在访问数据库时将启动并恢复该数据库。可能无法运行某些功能,如快照隔离和读提交快照。用于移动系统数据库和移动用户数据库。请不要在正常操作中使用。

 
3625
 限制错误消息中返回的信息量。有关详细信息,请参阅元数据可见性配置。

作用域:仅全局
 
4199
 控制以前基于多个跟踪标志进行的多个查询优化器更改。有关详细信息,请参阅此 Microsoft
支持文章。

作用域:全局或会话
 
4616
 使应用程序角色可以看到服务器级元数据。在 SQL Server
中,应用程序角色无法访问自身数据库以外的元数据,因为应用程序角色与服务器级主体不相关联。这是对早期版本的 SQL Server
的行为的更改。设置此全局标志将禁用新的限制,并允许应用程序角色访问服务器级元数据。

作用域:仅全局
 
6527
 禁止在 CLR 集成中第一次发生内存不足异常时生成内存转储。默认情况下,SQL Server 在
CLR 中第一次发生内存不足异常时会生成小内存转储。该跟踪标志的行为如下所示:

如果用作一个启动跟踪标志,则永远不生成内存转储。但是,如果使用了其他跟踪标志,则可能会生成内存转储。

如果在正在运行的服务器上启用此跟踪标志,则从此时开始不会自动生成内存转储。但是,如果已经由于 CLR
中的内存不足异常生成了内存转储,则此跟踪标志将没有任何效果。

作用域:仅全局
 
7806
 在 SQL Server Express 上启用专用管理员连接 (DAC)。默认情况下,在 SQL
Server Express 上不保留 DAC 资源。有关详细信息,请参阅使用专用管理员连接。

作用域:仅全局
 

注释:

在 SQL Server
中,有两种跟踪标志:会话跟踪标志和全局跟踪标志。会话跟踪标志对某个连接是有效的,只对该连接可见。全局跟踪标志在服务器级别上进行设置,对服务器上的每一个连接都可见。某些标志只能作为全局标志启用,而某些标志在全局或会话作用域都可以启用。

应遵循以下规则:

  • 全局跟踪标志必须全局启用。否则,跟踪标志无效。建议您在启动时通过使用 -T
    命令行选项启用全局跟踪标志。
  • 如果跟踪标志有全局或会话作用域,则可以用合适的作用域来启用它。在会话级别启用的跟踪标志永远不会影响另一个会话,并且当打开会话的
    SPID 注销时,该跟踪标志将失效。

使用以下方法之一可将跟踪标志设置为开或关:

  • 使用 DBCC TRACEON 和 DBCC TRACEOFF 命令。

    以 DBCC TRACEON 2528 为例,若要在全局作用域内启用跟踪标志,请在使用 DBCC TRACEON 时使用 -1
    参数:DBCC TRACEON (2528,
    -1)。若要关闭全局跟踪标志,请在使用 DBCC TRACEOFF 时使用 -1 参数。

  • 使用 -T 启动选项可以指定跟踪标志在启动期间设置为开。

    -T
    启动选项将全局启用跟踪标志。使用启动选项无法启动会话级别的跟踪标志。有关启动选项的详细信息,请参阅使用
    SQL Server 服务启动选项

使用 DBCC TRACESTATUS
命令确定哪些跟踪标志当前是活动的。

时间: 2024-11-03 08:10:37

SQL Server 2008 R2 跟踪标志的相关文章

监控 SQL Server (2005/2008) 的运行状况--来自微软TetchNet - 邀月 - 博客园

邀月工作室 监控 SQL Server (2005/2008) 的运行状况--来自微软TetchNet 原文地址: http://technet.microsoft.com/zh-cn/library/bb838723.aspx Microsoft SQL Server 2005 提供了一些工具来监控数据库.方法之一是动态管理视图.动态管理视图 (DMV) 和动态管理函数 (DMF) 返回的服务器状态信息可用于监控服务器实例的运行状况.诊断问题和优化性能. 常规服务器动态管理对象包括: dm_d

SQL Server 2008新特性——更改跟踪

在大型的数据库应用中,经常会遇到部分数据的脱机和多个数据库的合并问题.比如现在有一个全省范围使用的应用程序,每个市都部署了单独的相同的应用程序服务器和数据库服务器,每个月需要将全省所有市的数据全部汇总起来用于出全省的报表,这是一种很常见的数据库合并问题.再比如我们做了一个SmartClient的应用程序,每个客户端都有应用程序和数据库,另外还有一个中心数据库用于汇总所有客户端的数据.每个智能客户端上都可以对自己的数据库进行增删改查,一旦智能客户端连接到网络上时,系统就将客户端数据库中的数据更改全

升级SQL SERVER 6.5到2000的注意事项

server 为方便SQL SERVER 6.5版本的用户安全.不丢失数据地完成这一数据库升级转换过程,SQL SERVER2000提供了升级向导.使用升级向导可以转换一个或者所有的系统数据.用户数据.数据库对象,甚至可以把复制设置等数据库的任务和配置都进行升级. 注意事项: 1.在升级前,必须在计算机上已经安装有SQL SERVER 2000的默认实例. 2.在升级前备份所有的数据库,包括MASTER. 3.运行DBCC以确保原来的SQL SERVER6.5数据保持所有数据的一致性. 4.估计

SQL Server审计功能入门:更改跟踪(Change Tracking)

原文:SQL Server审计功能入门:更改跟踪(Change Tracking) 介绍        更改跟踪是一种轻量型解决方案,它为应用程序提供了一种有效的更改跟踪机制.常规的,自定义变更跟踪和读取跟踪数据,会使用触发器,存储过程和记录变更的用户表等, 还需要保证访问一致和相关清理工作. 使用CT会减少额外工作量和保证访问一致性. 启用CT的表上必须得有主键,所有版本适用.为了保证更改信息的有效性,官方建议结合快照隔离使用. CT只能提供:                     哪些行/

保存图片到SQL 2000 Server数据库

在ASP.NET的Web页面中怎样上传文件?怎样使用ADO.NET技术从数据库中读取一幅图片,并在Web页面上显示? 摘要.NET是由微软开发的一种新型的分布式计算平台,ASP.NET是它针对Web开发的编程模式.本文的目的是在开发数据驱动的ASP.NET Web应用程序中获取一些好的经验.这个应用程序将告诉你怎么把一幅图片保存到数据库中以及怎样把图片从数据库中读取出来.它以ADO.NET作为数据访问机制,C#作为编程语言,SQL 2000 Server作为后台数据库.概述一般的,很大的图片文件

在WebSphere Application Server V6.1应用程序中跟踪死锁

学习如何使用 IBM WebSphere Application Server V6.1 中的线程转储工具了解您的系统环境,检查是否发生死锁以及提取信息来帮助避免或解决自己应用程序的死锁情况. 引言 当两个或多个线程彼此形成循环依赖关系时,就出现了死锁.例如,如果线程 A 处于等待线程 B 的等待状态,而同时线程 B 处于等待线程 A 的等待状态,则出现了死锁.一旦形成此情况,线程 A 和线程 B 都不能有任何进展,因为这两个线程现在都无限期地挂起了.为什么会有人创建这种系统?当然,您并不会有意

win2008 r2 安装sql server 2005/2008 无法连接服务器解决方法_MsSql

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. 在使用G2服务时,测试服务器连接,结果遇到这个问题. 问题详细:连接测试失败!:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: 命名管道提供程序, error: 40 - 无法打开到

Microsoft® SQL Server® 2008 Express以及Microsoft® SQL Server® 2008 R2 SP1下载地址

   Microsoft SQL Server 2008 Expresshttp://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=B5D1B8C3-FDA5-4508-B0D0-1311D670E336&displaylang=zh-cn    Microsoft SQL Server 2008 R2 SP1 http://www.microsoft.com/downloads/zh-cn/details.aspx?family

win2008 r2 安装sql server 2005/2008 无法连接服务器解决方法

在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. 在使用G2服务时,测试服务器连接,结果遇到这个问题. 问题详细:连接测试失败!:在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: 命名管道提供程序, error: 40 - 无法打开到