在 SQL Server 中“永久”设置跟踪标志?

在 SQL Server 中“永久”设置跟踪标志?

我们需要使用SQL Server 跟踪标志 7646以帮助缓解一些全文阻止,但我沮丧地发现跟踪标志本身“未设置”,可能是在数据库服务器重新启动时。

我用过

DBCC TRACEON (7646, -1)

设置跟踪标志并

DBCC TRACESTATUS

显示所有跟踪标志,它告诉我不是设置(我猜是重启后)。要永久设置跟踪标志,我执行以下操作:

  • 转到 SQL Server 配置管理器
  • 查看 SQL Server 服务的属性
  • 访问了“高级”选项卡
  • 编辑了启动参数选项

并添加

;-T{跟踪号}

到最后,就像这样……

-dD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf;-eD:\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;-lD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\mastlog.ldf;-T7646

对吗?我发现SQL Server 启动参数的语法

答案1

是的,这差不多可以帮你搞定了。使用 -T{traceflag} 启动参数即可。

答案2

我学到的教训是,每个跟踪标志前都必须有分号。例如,如果您启用将死锁信息记录到文件中,您的示例将变成...

-dD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\master.mdf;-
eD:\MSSQL10.MSSQLSERVER\MSSQL\Log\ERRORLOG;-
lD:\MSSQL10.MSSQLSERVER\MSSQL\DATA\mastlog.l
df;-T7646;-T3605;-T1204;-T1222

跟踪标志之间的空格会导致后面的标志被忽略。

相关内容