sqlserver 2008 的跟踪器-sql server profiler,里面的内嵌视图exec sp_prepexec @p1 output

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sqlserver 2008 的跟踪器-sql server profiler,里面的内嵌视图exec sp_prepexec @p1 output相关的知识,希望对你有一定的参考价值。

大家好,我是sqlserver 2008 的初学者,为了知道前台的操作所对应后台的数据库执行过程,我用了跟踪器-sql server profiler,但是下图的看不大懂。我只知道是调用了一个服务器内部的存储过程,然后后面传了一大串的参数,然后还要输出,到底干什么用呢?

sp_prepexec结合了 sp_prepare 和 sp_execute 的功能
sp_prepare准备参数化的 Transact-SQL 语句并返回用于执行的语句“句柄”。
sp_execute执行这个“句柄”
可以认为是前台应用程序的参数化执行语句在数据库内部的一个呈现
参考技术A 测试用的,或者说调试出程序的问题漏洞

SQL Server 跟踪标志 3226

在 SQL Server 中,您可能不知道数据库备份消息的一个默认行为。默认情况下,每个数据库成功备份都会在 SQL Server 错误日志中记录一条消息。对所有备份类型、所有数据库都会发生这种情况。如果您有大量数据库且频繁执行事务日志备份,这可能是一个问题。这可能会导致您的 SQL Server 错误日志包含大量不是很有用的信息。您可以使用 SQL Server 跟踪标志 3226 更改此行为。

 图 1:SQL Server 日志文件查看器

早在 2007 年,微软的 Kevin Farlee 写了一篇关于跟踪标志 3226 的文章。这个跟踪标志从 SQL Server 2000 开始就在产品中,所以它的历史很长。

这是 Microsoft 对此跟踪标志的描述:

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

使用这一跟踪标志,可以取消这些日志条目。如果您频繁地运行日志备份,并且没有任何脚本依赖于这些条目,则这种做法非常有用。

此跟踪标志会阻止成功备份的数据库在 SQL Server 错误日志和系统事件日志中记录消息。失败的数据库备份仍会在 SQL Server 错误日志中记录消息,了解这一点很重要。您还可以查询 msdb 数据库以查看您的数据库备份历史记录。

您可以通过运行 DBCC TRACEON (3226, -1) 来启用 TF 3226。-1 表示它是 SQL Server 实例的全局跟踪标志。此跟踪标志立即生效,无需重新启动 SQL Server 服务。

您可以将 TF 3226 作为自启动项,以便它在每次 SQL Server 重新启动时生效。图 2 显示这已在 SQL Server 配置管理器中完成。

 我强烈建议每个人都启用 SQL Server TF 3226 并将其设置为启动跟踪标志。这样做应该是 SQL Server 实例的标准构建和配置过程的一部分。

以上是关于sqlserver 2008 的跟踪器-sql server profiler,里面的内嵌视图exec sp_prepexec @p1 output的主要内容,如果未能解决你的问题,请参考以下文章

跟踪标志 1211 不起作用 - SQL Server 2008 R2

如何创建跟踪 (SQL Server Profiler)

sql server profiler 是啥文件

如何在 SQL Server 中找到正在运行的跟踪?

SQL Server 2008 R2 / s-s-rS 2008:服务水平报告创建

如何在sql server 2008客户端安装sql profiler