INF: 了解如何設定 SQL Server I/O 相關性選項

文章翻譯 文章翻譯
文章編號: 298402 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

結論

本文將告訴您 I/O 相關性是什麼,以及如何使用在 SQL Server 2000 SP1 或更新版本中可用的 I/O 相關性 選項。在線上交易處理 (OLTP) 環境,I/O 相關性 選項可能會提供高階、 企業層級 16 或多個 CPU 的電腦執行 SQL Server 環境中的效能增強功能。這個選項支援僅 SQL Server 磁碟 I/O,並不支援個別的磁碟或磁碟控制器上的任何硬體相似性。

其他相關資訊

SQL Server 2000 Service Pack 1 延伸功能的 SQL Server 2000 關連遮罩 組態選項藉由引入 IO_affinity_mask 切換控制。

sp_configure 預存程序中所定義的 相似性遮罩 組態選項可讓您指定要用來從 SQL Server 執行個體執行的執行緒是在多處理器電腦上的 CPU。您可以使用 相關性遮罩 組態選項,在 SQL Server 執行緒排除您要保留作業系統處理序的處理器。更多有關 相關性遮罩 選項的資訊,請參閱 SQL Server 2000 線上叢書 》。同樣地,IO_affinity_mask 可讓您指定哪些 CPU 設定為執行 SQL Server I/O 作業相關的執行緒。

在大型的企業層級超過 16 個 CPU 與多處理器電腦上執行 SQL Server 執行個體時, 您可能達成額外的效能優點 相關性遮罩 選項搭配使用 IO_affinity_mask 參數。這提供功能,以指定的 CPU affinitized SQL Server 磁碟作業和其 CPU 服務其餘 SQL Server 相關聯的處理。

在幾乎所有情況留下 IO_affinity_mask 在其預設設定結果最佳的效能。有些網站可能會看到效能改進藉由設定 IO_affinity_mask 選項。

如果配置給 SQL Server 磁碟 IO 處理的 CPU 數目大於哪些系統需要進行磁碟 IO 處理,可能會建立非磁碟相關的 CPU 需求為效能瓶頸。相反地,效能瓶頸的磁碟 IO 可能建立如果您啟用 SQL Server 磁碟 IO 處理比哪些系統需要進行磁碟 IO 處理較少 CPU。

若要啟動 IO_affinity_mask 選項,您必須新增額外靜態的輸入的參數作為 SQL Server 啟動參數中企業管理員] 或 [sqlservr 命令列上。(目前,此選項無法使用。 sp_configure 預存程序) 例如:

-I<IO_affinity_mask>

描述及 IO_affinity_mask 如下的相關資訊:

  • 指定在多處理器電腦中的 CPU 是合格處理 SQL Server 磁碟 I/O 作業。
  • IO_affinity_mask 是一個數字,可以是十進位 (不特別方便大量的 CPU) 中指定或十六進位如果前面 '0x' 或 '0 X'。
  • 遮罩是的點陣圖,右邊的位元指定最低順序 CPU(0) 下, 一個右邊的位元指定下一個的最低順序 CPU(1) 等等。
  • 一個位元組 IO_affinity_mask 涵蓋多處理器電腦中的最多 8 CPU、 兩個位元組遮罩涵蓋最多 16 個 CPU、 一個三個位元組遮罩涵蓋最多 24 個 CPU 及四個位元組遮罩涵蓋最多 32 個 CPU。
  • 一個的位元模式中指定對應的 CPU 是合格執行 SQL Server 磁碟 IO 作業 ; 一個零的位元指定沒有 SQL Server 磁碟 IO 作業所排定的相對應的 CPU。
  • 當所有的位元設為 0,或未指定 IO_affinity_mask 時,就 SQL Server 磁碟 I/O 安排到任何合格處理 SQL Server 執行緒的 CPU。
  • 在執行 SQL Server 時,無法變更 IO_affinity_mask 參數的值。要變更 IO_affinity_mask 交換器必須關機的 SQL Server 執行個體,然後再以新值,指定給 IO_affinity_mask 重新啟動它。
SQL Server 2000 會解譯 IO_affinity_mask 位元相同的方式解譯 關連遮罩 位元。

如果您指定 IO_affinity_mask 參數,Microsoft 建議您的使用搭配 關連遮罩 組態選項。請確定啟用這兩個 IO_affinity_mask 參數並 affinity_mask 選項的 CPU。

對應到每個 CPU,位元應該在下列三個狀態之一:
  • 0 在 IO_affinity_mask 切換控制與 相關性遮罩 選項。
  • 1 在 IO_affinity_mask 參數並 相關性遮罩 選項的 0。
  • IO_affinity_mask 切換控制和 相關性遮罩 選項的 1 中的 0。
做為範例,請考慮執行需要下列組態的 SQL Server 的 32 處理器電腦:
  • SQL Server 使用 24 超出 32 的 CPU。
  • 配置到 SQL Server 磁碟 IO 8 的 CPU 和所有其他 SQL Server 處理的 16 CPU。
若要達成這種組態,請執行下列步驟:
  1. 設定 相關性遮罩 選項,SQL Server 相關聯的磁碟 I/O 以外的 SQL Server 處理 16 CPU:
      sp_configure "affinity mask", 0x0000FFFF
      go
      reconfigure with override
      go
    					
  2. 關機 SQL Server。
  3. 使用下列參數啟動 SQL Server。這會設定 SQL Server 8 的 CPU 使用的磁碟 I/O:
      sqlservr -I0x00FF0000
    					
SQL Server 會要求系統,以支援 ‘ 保證傳遞穩定媒體 ’ Microsoft SQL Server Always-On 存放裝置方案檢閱程式] 下所述。 Fo如 SQL Server 資料庫引擎的輸入與輸出需求的更多有關,按一下 [下面的文件編號,檢視 「 Microsoft 知識庫 」 中的發行項]:
967576Microsoft SQL Server 資料庫引擎的輸入/輸出需求

屬性

文章編號: 298402 - 上次校閱: 2007年10月26日 - 版次: 1.3
這篇文章中的資訊適用於:
  • Microsoft SQL Server 2000 Service Pack 1
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Standard
關鍵字:?
kbmt kbproductlink kbinfo kbsqlserv2000sp1fix KB298402 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:298402
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com