2015-10-13 22 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/ –