Sql server 仅在我的计算机上运行缓慢的查询
我正在对MicrosoftSQLServer2005运行一个简单的查询。该表有大约41000条记录,带有PK聚集索引,我使用的是windows集成身份验证Sql server 仅在我的计算机上运行缓慢的查询,sql-server,sql-server-2005,sql-server-2008-r2,Sql Server,Sql Server 2005,Sql Server 2008 R2,我正在对MicrosoftSQLServer2005运行一个简单的查询。该表有大约41000条记录,带有PK聚集索引,我使用的是windows集成身份验证 当我使用MicrosoftSQLServerManagementStudio在我的机器上运行此命令时,查询大约在1h45m内完成。我尝试过从网格切换到文本输出,使用SQLCMD从命令行运行它,还尝试过在查询之前执行DBCC-USEROPTIONS,DBCC-DROPCLEANBUFFERS,DBCC-FREEPROCCACHE。。。没有改变
- 当我使用MicrosoftSQLServerManagementStudio在我的机器上运行此命令时,查询大约在1h45m内完成。我尝试过从网格切换到文本输出,使用
从命令行运行它,还尝试过在查询之前执行SQLCMD
,DBCC-USEROPTIONS
,DBCC-DROPCLEANBUFFERS
。。。没有改变查询的速度DBCC-FREEPROCCACHE
- 当我使用我的凭证从同事的工作站运行它时,查询很快就会正常完成。如果同事使用其凭据在我的工作站上运行查询,则查询速度会非常慢,如上所述
- 我检查并确保我的机器(Win7-64位)上未启用ODBC跟踪。我已经使用Microsoft Management Studio 2008 R2安装了SQL Server客户端工具,这就是我用来查询数据库的工具
- 我还使用VS2010运行相同的sql查询,结果是相同的
- 我在不同的服务器上对同一个表/数据库的副本运行查询,问题仍然存在
- 当我运行
-查询正常完成,没有延迟时,从表中选择count(*)
- 当我使用SQL Server Profiler运行跟踪时,查询只是一个长时间运行的查询-我看不到任何异常
- 当我在MSSQLServerManagementStudio中使用text-out-put运行查询时,我可以看到在大约85条记录的初始缓冲区之后,随后的记录一次到达大约400条记录。例如,85->407->804->1210->1605->1897->2161->2753->3051->3342->3676->4002等。与coleagues工作站相比,您可以在数据到达时看到绘制为连续流的记录李>
- 我还比较了我的机器上的实际查询执行计划和查询正常运行的机器上的实际查询执行计划——它们看起来是相同的
提前感谢大家 您是否已硬连线到局域网?无线上网?检查您的网络延迟,您提供的一切都正常。Ping数据库服务器以检查此问题
接下来我要检查的是确保当时服务器或数据库上没有运行任何其他内容。防病毒软件,测试,任何可能减慢数据库速度的东西。另外,您是否通过virtual box运行此查询?从本地服务器和远程设备中获取一个执行计划,并排比较它们。它们应该是一样的。如果他们没有,你知道这是个问题
还要检查每个连接执行查询时使用的用户集选项。这可能会产生影响。如果这些都不是问题,我的下一个猜测是硬件或配置故障您是否硬连线到LAN?无线上网?检查您的网络延迟,您提供的一切都正常。Ping数据库服务器以检查此问题
接下来我要检查的是确保当时服务器或数据库上没有运行任何其他内容。防病毒软件,测试,任何可能减慢数据库速度的东西。另外,您是否通过virtual box运行此查询?从本地服务器和远程设备中获取一个执行计划,并排比较它们。它们应该是一样的。如果他们没有,你知道这是个问题
还要检查每个连接执行查询时使用的用户集选项。这可能会产生影响。如果这些都不是问题,我的下一个猜测可能是硬件或配置故障,我发现了问题-是网络适配器驱动程序更新。一旦我回滚了驱动程序,查询就会按预期执行,没有延迟 我花了很长时间才弄清楚这件事。为了记录我的网卡是“英特尔(R)82579LM千兆网络连接”,流氓网络驱动程序来自windows update。
我的工作站是HP 8200 Elite。驱动程序回滚后,我从HP支持站点下载并安装了最新的网络驱动程序,似乎这就是解决方案-到目前为止,我没有遇到运行缓慢的SQL查询问题:)我发现了问题-这是一个网络适配器驱动程序更新。一旦我回滚了驱动程序,查询就会按预期执行,没有延迟 我花了很长时间才弄清楚这件事。为了记录我的网卡是“英特尔(R)82579LM千兆网络连接”,流氓网络驱动程序来自windows update。
我的工作站是HP 8200 Elite。在驱动程序回滚后,我从HP支持站点下载并安装了最新的网络驱动程序,这似乎是解决方案-到目前为止,我没有遇到运行缓慢的SQL查询的问题:)这些执行计划正在运行不同的查询。您发布的两个执行计划似乎在查询两个不同的表。第一个是tblQuoteSummary,第二个是tblQuoteLayer。是的,我确实为我的疏忽道歉——我确实发布了错误的截图。我删除了截图,因为它们是相同的,不会增加价值或任何附加信息。与此同时,我发现了问题——请参见下面的答案:)这些执行计划正在运行不同的查询。您发布的两个执行计划似乎在查询两个不同的表。第一个是tblQuoteSummary,第二个是tblQuoteLayer。是的,我确实为我的疏忽道歉——我确实发布了错误的屏幕