![]() |
1
5
您可以设置一个后台跟踪,该跟踪在SQL Server初始化时自动运行。然后,在跟踪中,可以将跟踪语句输出到表中。 例如,打开SQL Server事件探查器。创建所需的跟踪,即包括sp:starting和所需的列。还可以选择将跟踪保存到表中。 现在,在设置脚本之后,选择文件/导出/脚本跟踪定义。这将创建一个生成跟踪的SQL语句。 接下来,创建一个使用SQL创建此跟踪的存储过程。在master数据库中安装proc,并告诉SQL Server在启动时自动运行它:
现在,每当SQL Server重新启动时,它都会自动配置跟踪,并且所有的sp调用都会记录到一个表中。 --编辑—— 还请注意,有些动态管理视图(DMV)对于监视存储过程很有用。两个你可能感兴趣的: 例如,sys.dm_exec_procedure_stats将告诉您进程上次运行的时间、运行的次数、最长的执行时间等。请注意,这些视图仅影响数据库缓存中当前的存储过程。如果卸载了proc,那么信息也是这样。 |
![]() |
2
2
只能使用SQL事件探查器 可靠地 :没有要使用的执行挂钩或“执行触发器”。 这就是说,您可以间接但不能100%可靠地监视计划缓存。见 this link . 但是,如果您有重新编译选项,那么在使用后会将其从缓存中删除。另外,在服务器启动后,状态会被重置,您需要运行DMV来查看缓存中的内容。 这取决于你需要多彻底… |
![]() |
3
0
您可以使用诸如SQL Log Rescue(free)之类的工具来查询SQL日志文件。 http://www.red-gate.com/products/SQL_Log_Rescue/index.htm 它可以告诉您何时运行了哪些存储过程。 这是最简单的方法,因为它不涉及修改任何现有代码,也不会增加应用程序和服务器的开销。 |
![]() |
Martin · 简单选择需要花费大量时间来执行 7 年前 |
![]() |
Coder · 在Java中从字符串执行代码 7 年前 |
![]() |
Navdeep Singh · C中表达式的执行逻辑是什么?[副本] 7 年前 |
![]() |
kjl · 区分脚本是“直接”运行还是使用Python可执行文件运行 11 年前 |