2015-10-13 33 views
0

我能够从sys.configurations查询“max degree of parallelism(maxdop)”值,但无法为azure-sql服务器更新相同值。我不太确定在azure-sql中是否有替代sp_configure存储过程的选项。将azure sql server的最大并行度修改为1

SELECT 
    name, 
    value_in_use 
FROM 
    sys.configurations(nolock) 
WHERE 
    description LIKE '%parallelism%' 

update sys.configurations set value_in_use=1 where name='max degree of parallelism'  

我收到一个错误:系统目录的临时更新是不允许的。我认为这是预期的,因为我们应该使用sp_configure来更新配置值。

在azure-sql的服务器级别上设置maxdop时会发出一些提示。我可以明确地在每个sp级别设置它,但将它设置在服务器级别本身会很好。

如何在不使用sp_configure的情况下在sql-azure上设置“最大并行度”?指导我如何更新sys.configurations中的值。我没有看到来自天蓝门户的“最大程度的并行性”的任何属性。

回答

0

嗯..我敢肯定,SQL Azure主动忽略任何传递给它的MAXDOP查询提示,这可能会使您的问题成为一个有争议的问题?如果你试图改变它,你会发现一个错误,你会发现一个错误。

+0

我担心新版本的Azure Sql是V12 MAXDOP的值不是默认为1而是0我查询了sys.configurations并将maxdop看作为0.我阅读[here](http:// sqlmag.com/sql-server/introducing-azure-sql-database-v12),该版本的Premium级别提供了相关性支持。我可能错过了更改日志中的内容。 – seesharpconcepts

+0

没关系,没必要害怕;) 我想这将开始发生越来越多与蔚蓝的猖獗发布周期,我还没有读过关于v12的任何事情!实际上,这个“什么是新的”甚至没有列出变化 - https://azure.microsoft.com/en-gb/documentation/articles/sql-database-v12-whats-new/ – m1nkeh

1

您将无法更改SQL DB中的Max DOP,并且它等于0(对于SQL DB v12),这是SQL DB V11(它是1)中的一个不同行为。如果您看到您的查询计划影响性能并需要将其重置为1,请打开MSFT的支持凭单,这将被修复。

+0

设置'选项(maxdop 1)'对于每个受影响的查询,似乎对我们来说运行良好。我们在改变这些查询之后做了大量的测试,并没有遇到任何意想不到的情况。我想检查这是否可以在服务器级别完成。 – seesharpconcepts

+0

现在不支持修改设置,但正在为每个数据库提供此功能(目前还没有ETA)。 –

+1

现在可以在具有数据库作用域配置设置的SQL DB中进行更改。 http://www.sqlindepth.com/changing-max_dop-setting-in-sql-azure-db-v12/ –