設定伺服器組態選項

您可以使用 SQL Server Management Studio 或 sp_configure 系統預存程序,透過組態選項來管理及最佳化 SQL Server 資源。最常用的伺服器組態選項可以透過 SQL Server Management Studio 來使用,而所有組態選項都可以透過 sp_configure 來存取。在設定這些選項前,請仔細考慮這些選項對系統所造成的效果。

重要事項重要事項

只有有經驗的資料庫管理員或通過認證的 SQL Server 技術人員,才可變更進階選項。

使用 sp_configure 系統預存程序

使用 sp_configure 時,您必須在設定組態選項之後,執行 RECONFIGURE 或 RECONFIGURE WITH OVERRIDE。RECONFIGURE WITH OVERRIDE 陳述式通常是保留給應該非常小心使用的組態選項。但是 RECONFIGURE WITH OVERRIDE 對所有組態選項都有效,所以它可以取代 RECONFIGURE。

[!附註]

RECONFIGURE 會在交易中執行。如果任何重新設定作業失敗,所有重新設定作業都不會生效。

可以利用下列陳述式來判斷每個選項的值。

SELECT * FROM sys.configurations
ORDER BY name ;
GO

下列範例將示範如何使用 sp_configure,將 fill factor 選項從預設設定變更為 100 的值。

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'fill factor', 100;
GO
RECONFIGURE;
GO

設定選項的範疇

設定選項的生效方式可能是其中之一:

  • 在設定選項並發出 RECONFIGURE 陳述式 (在某些情況下是 RECONFIGURE WITH OVERRIDE) 後立即生效。

    - 或 -

  • 執行上述動作並重新啟動 SQL Server 執行個體後。

若要設定進階選項,您必須先執行 sp_configure 並將 'show advanced options' 選項設定為 1,然後執行 RECONFIGURE,如下列範例所示。

sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'cursor threshold', 0;
GO
RECONFIGURE;
GO

系統就會立即重新設定 cursor threshold 選項。cursor threshold 的新值將出現在組態選項的 value_in_use 資料行及 value 資料行中。

需要重新啟動 SQL Server 的選項最初只會在 value 資料行中顯示變更後的值。重新啟動之後,新值將同時出現在 value 資料行及 value_in_use 資料行。

有些選項需要重新啟動伺服器,新的組態值才能生效。如果在重新啟動伺服器之前就設定新值並執行 sp_configure,新值會出現在組態選項的 value 資料行,但不會出現在 value_in_use 資料行。重新啟動伺服器之後,新的值就會出現在 value_in_use 資料行。

自我設定的選項是指 SQL Server 會根據系統需要而自行調整的選項。在大多數情況下,都不需以手動方式來設定這些值。範例包括 min server memory 和 max server memory 選項以及 user connections 選項。

組態選項表

下表列出所有可用的組態選項、可能的設定範圍以及預設值。組態選項會加上字母標示,如下所示: