在共享托管服务提供商上,我收到如下错误:
The query has been canceled because the estimated cost of this query (1660) exceeds the configured threshold of 1500. Contact the system administrator.
我知道这是因为正在使用的 SQL Server 2008 实例启用了 SQL Governor,因此我需要降低查询成本。
我想在我的开发机器上重现这种情况。但是,资源调控器仅在 MSSQL2008 企业版(我没有)中可用,因此我无法在本地启用它。
我可以在本地衡量查询吗?这个限制(1500)的单位是什么?
编辑 明确地说,我的机器上已经了 MSSQL,但该版本不支持 SQL Governor(为此您需要企业版。)
最佳答案
获取 SQL Developer Edition 的副本。它非常便宜,并且具有成熟企业的所有功能。凭借我们的公司许可证,我们获得了大约 30 美元的许可证。
如果您不想购买它,您通常可以下载 60 天(或更长时间)的试用版并至少使用足够长的时间来解决您的问题。
http://www.microsoft.com/sqlserver/2008/en/us/trial-software.aspx
然而,另一个问题是您还必须模拟托管服务器和硬件的负载,以准确了解它的估计成本与您的成本。这可能会变得复杂。
问题的第二部分:unit of measure for the cost is a time measurement (秒)。如果服务器估计它的执行时间将超过最大值,那么它就不行了。
关于sql-server - 如何衡量 SQL 查询成本以满足 SQL Governor 的要求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6181761/