2

我正在尝试优化 SQL Server 2000 数据库上的一些存储过程,当我尝试使用 SQL Profiler 时,我收到一条错误消息“为了对 SQL Server 运行跟踪,您必须是 sysadmin 固定服务器角色的成员。” . 似乎只有 sysadmin 角色的成员才能在服务器上运行跟踪(在 SQL Server 2005 中已修复),而且我无法获得该服务器角色(公司政策)

我现在正在做的是插入当前时间减去程序在代码的各个阶段开始的时间,但我觉得这很乏味

我也在考虑将数据库复制到本地安装的 SQL Server,但存储过程使用来自许多不同数据库的数据,我将花费大量时间在本地复制数据

所以我想知道是否有其他方法来分析 SQL 代码?(第三方工具,不同的做法,别的东西)

4

3 回答 3

1

在查询分析器中:

SET STATISTICS TIME ON

SET STATISTICS IO ON

运行查询并查看消息选项卡。

在我看来,这可能需要相同的权限,但值得一试。

于 2008-09-23T10:35:24.340 回答
1

没有探查器,您的手有点束缚。

但是,您可以从使用查询分析器或任何查询工具调整现有查询并检查执行计划开始。通过 QA,您可以使用 Show Execution Plan 选项。从其他工具中,您可以使用

SET STATISTICS PROFILE ON / OFF
于 2008-09-23T10:36:22.827 回答
1

SQL 2000 上有一个变通方法来混淆 Profiler 连接对话框,以将 sysadmin 连接限制为仅运行跟踪。

SQL团队

博客

于 2008-10-14T18:11:35.673 回答