SQL Server Profiler 在不同系统上跟踪相同查询的不同结果
SQL Server Profiler trace different result on different system for same query
我 运行 相同的 JAVA 应用程序 (spring/hibernate) 在不同的系统上都使用相同的 SQL 服务器版本。
我正在使用 SQL Server Profiler 来跟踪我在两个系统上 运行(完全相同)的查询。
这是我在两个系统上的 SQL 服务器版本:
跟踪系统 1:slow-system2.trc 查询随机花费 100 - 300 毫秒
跟踪系统 2:fast.trc 查询在 10-20 毫秒之间随机发生
这里的慢速屏幕截图显示,与 fast.trc 相比,"use database" 的查询花费“331 毫秒”(0 毫秒=:
仅通过 运行ning "use database" 查询会导致这种差异的原因是什么?
我试过第 3 个系统 运行ning on sql express 太慢了 here is trace
在 "sql express" 上似乎是因为我有两个额外的 classEvent 审计注销 需要时间:
也许我在 SQL 服务器上遗漏了一些选项?
USE
语句的持续时间过长表明数据库可能设置为 AUTO_CLOSE ON
。数据库启动时必须打开时会产生开销。
可以通过以下方式更改设置:
ALTER DATABASE [YourDatabase] SET AUTO_CLOSE OFF;
我 运行 相同的 JAVA 应用程序 (spring/hibernate) 在不同的系统上都使用相同的 SQL 服务器版本。
我正在使用 SQL Server Profiler 来跟踪我在两个系统上 运行(完全相同)的查询。
这是我在两个系统上的 SQL 服务器版本:
跟踪系统 1:slow-system2.trc 查询随机花费 100 - 300 毫秒
跟踪系统 2:fast.trc 查询在 10-20 毫秒之间随机发生
这里的慢速屏幕截图显示,与 fast.trc 相比,"use database" 的查询花费“331 毫秒”(0 毫秒=:
仅通过 运行ning "use database" 查询会导致这种差异的原因是什么?
我试过第 3 个系统 运行ning on sql express 太慢了 here is trace
在 "sql express" 上似乎是因为我有两个额外的 classEvent 审计注销 需要时间:
也许我在 SQL 服务器上遗漏了一些选项?
USE
语句的持续时间过长表明数据库可能设置为 AUTO_CLOSE ON
。数据库启动时必须打开时会产生开销。
可以通过以下方式更改设置:
ALTER DATABASE [YourDatabase] SET AUTO_CLOSE OFF;