BizTalk Server資料庫優化的預先設定
BizTalk Server是需要在 Microsoft SQL Server 中建立最多 13 個不同資料庫的非常需要大量資料庫的資料庫密集應用程式。 由於SQL Server在任何BizTalk Server環境中扮演的重要角色,因此SQL Server設定/調整以獲得最佳效能非常重要。 如果SQL Server無法妥善執行,則BizTalk Server所使用的資料庫將會成為瓶頸,而BizTalk Server環境的整體效能將會受到影響。 本主題描述安裝BizTalk Server和設定BizTalk Server資料庫之前,應遵循的數個SQL Server效能優化。
設定 NTFS 檔案配置單位
SQL Server將其資料儲存在「範圍」中,也就是八個 8K 頁面的群組。 因此,若要將磁片效能優化,請將 NTFS 配置單位大小設定為 64KB,如「磁片設定最佳做法 - 預先部署 I/O 最佳做法」指南 SQL Server中所述。 如需有關SQL Server頁面和範圍的詳細資訊,請參閱瞭解頁面和範圍。
資料庫規劃考慮
Microsoft 建議您在快速儲存體 (上裝載SQL Server資料庫,例如快速 SAN 磁片或快速 SCSI 磁片) 。 Microsoft 建議使用 RAID 10 (1+0) ,而不是 RAID 5,因為 RAID 5 在寫入時速度較慢。 較新的 SAN 磁片有非常大的記憶體快取,因此在這些情況下,RAID 選擇並不重要。 為了提升效能,資料庫及其記錄檔可以位於不同的實體磁片上。
安裝最新的 Service Pack 和累積更新以進行SQL Server
安裝 SQL Server 2005 和 SQL Server 2008 的最新 Service Pack 和最新的累積更新,以及最新的 .NET Framework Service Pack。
在 BizTalk Server 和 SQL Server 上安裝 SQL Service Pack
安裝 SQL Server 的 Service Pack 時,也會在BizTalk Server電腦上安裝 Service Pack。 BizTalk Server會使用由 SQL Server Service Pack 更新的 SQL 用戶端元件。
請考慮實作 SQL Server 2008 資料收集器和管理Data Warehouse
SQL Server 2008 容納使用新的資料收集器和管理Data Warehouse來收集環境和趨勢分析的環境/資料庫效能相關資料。 資料收集器會將所有收集的資料保存到指定的管理Data Warehouse。 雖然這不是效能優化,但這對於分析任何效能問題非常有用。
授與用於SQL Server Windows 鎖定分頁記憶體許可權的帳戶
將 Windows「鎖定記憶體中的分頁」許可權授與SQL Server服務帳戶。 這應該要避免 Windows 作業系統藉由鎖定在實體記憶體中為緩衝集區配置給緩衝集區的記憶體,來分頁SQL Server進程的緩衝集區記憶體。 如需詳細資訊,請參閱 Microsoft 知識庫文章914483「如何在 64 位版本的 SQL Server 2005 中減少緩衝集區記憶體的分頁」。 https://go.microsoft.com/fwlink/?LinkId=148948
將SE_MANAGE_VOLUME_NAME許可權授與SQL Server服務帳戶
請確定執行SQL Server服務的帳戶具有「執行磁片區維護工作」Windows 許可權,或確定它屬於確實屬於安全性群組。 這可讓立即檔案初始化確保資料庫必須自動成長時獲得最佳效能。
設定最小和最大伺服器記憶體
執行SQL Server BizTalk Server資料庫的電腦應該專用於執行SQL Server。 我們建議將每個SQL Server實例上的「最小伺服器記憶體」和「最大伺服器記憶體」選項設定為指定要配置給SQL Server的固定記憶體數量。 在此情況下,您應該將 「min server memory」 和 「max server memory」 設定為相同的值, (等於SQL Server將使用) 的最大實體記憶體數量。 這可減少SQL Server動態管理這些值所要使用的額外負荷。 在每個SQL Server電腦上執行下列 T-SQL 命令,以指定要配置給SQL Server的固定記憶體數量:
sp_configure ‘Max Server memory (MB)’,(max size in MB)
sp_configure ‘Min Server memory (MB)’,(min size in MB)
在設定SQL Server的記憶體數量之前,請先將 Windows Server 所需的記憶體減去總實體記憶體,以判斷適當的記憶體設定。 這是您可以指派給SQL Server的最大記憶體數量。
注意
如果主控BizTalk Server資料庫SQL Server執行的電腦 () 也會裝載 Enterprise Single Sign-On Master Secret Server,您可能需要調整此值,以確保有足夠的記憶體可用來執行 Enterprise Single Sign-On Service。 在SQL Server叢集上執行企業單一 Sign-On 服務的叢集實例,以提供主要秘密伺服器的高可用性並不常見。 如需將 Enterprise Single Sign-On Master Secret Server 叢集的詳細資訊,請參閱 BizTalk Serverdocumentation https://go.microsoft.com/fwlink/?LinkID=106874 中的主題。
在BizTalk Server所使用的每個SQL Server實例上,將 tempdb 資料庫分割成大小相等的多個資料檔案
確保用於 tempdb 的資料檔案大小相等非常重要,因為SQL Server所使用的比例填滿演算法是以資料檔案的大小為基礎。 此演算法會嘗試確保SQL Server以與該檔案中剩餘的可用空間成比例填滿每個檔案,使其同時達到其最大容量。 如果資料檔案的大小不相等,比例填滿演算法會使用最大檔案來配置 GAM 配置,而不是在所有檔案之間分配配置,進而破壞建立多個資料檔案的目的。 tempdb 資料庫的資料檔案數目應設定為至少等於指派給SQL Server的處理器數目。
啟用追蹤旗標 T1118 作為所有實例的啟動參數SQL Server
如果您實作追蹤旗標 - T1118 可藉由移除幾乎所有單一頁面配置,協助減少SQL Server實例之間的爭用。 如需詳細資訊,請參閱 Microsoft 知識庫328551 - tempdb 資料庫的並行增強功能。
請勿變更平行處理原則的最大程度、SQL Server統計資料或資料庫索引重建和重組的預設SQL Server設定
如果您有裝載BizTalk Server資料庫的SQL Server實例,請勿變更SQL Server設定,以取得最大平行處理原則的程度、SQL Server MessageBox 資料庫的統計資料,以及資料庫索引重建和重組的設定。 如需詳細資訊,請參閱SQL Server不應變更的設定。