管理能力增強功能 (Database Engine)

SQL Server 2008 R2 引進 SQL Server 公用程式來管理 SQL Server Database Engine 的多個執行個體。此外還引進一個稱為資料層應用程式 (DAC) 的管理單位,它會提供以應用程式為基礎的檢視,在 SQL Server 公用程式或獨立 Database Engine 執行個體中管理資料層物件。

SQL Server 2008 R2 的新增功能

[!附註]

因為 SQL Server 2008 R2 是 SQL Server 2008 的次要版本更新,所以建議您也檢閱 SQL Server 2008 章節中的內容。

SQL Server 公用程式

SQL Server 公用程式可讓您:

  • 建立 SQL Server 公用程式控制點 (UCP):安裝 SQL Server 2008 R2 Database Engine 的單一執行個體,然後將它升級為 UCP。UCP 是針對 SQL Server 公用程式中註冊之所有執行個體收集的組態與效能資料的中央儲存機制。UCP 是 SQL Server 公用程式的中央推理點。它可支援一些動作,例如套用中央原則,或是分析可能超出中央資源使用量原則時,所要預測之執行個體的資源使用量趨勢。

  • 在 SQL Server Management Studio 中使用公用程式總管來註冊現有的 SQL Server 2008 R2 資料層應用程式及 Database Engine的執行個體,以便在 SQL Server 公用程式中進行集中管理。

  • 設定中央原則,以調整及控制 SQL Server 公用程式與其儀表板的作業。

  • 使用公用程式總管可顯示有關報告 SQL Server 公用程式內註冊之所有執行個體的資源使用量、資源健全狀況及組態資訊的儀表板和詳細視點。儀表板可讓您快速識別讓基礎硬體資源的使用量過高或過低的資料層應用程式與 Database Engine 執行個體。然後您可以開發一個計畫讓伺服器的使用量最大化,例如將使用量過低的執行個體或資料庫合併到單一伺服器。

如需有關 SQL Server 公用程式的詳細資訊,請參閱:

資料層應用程式

資料層應用程式會簡化可支援多層或用戶端-伺服器應用程式之資料層物件的開發、部署與管理。DAC 會定義支援應用程式所需的所有 Database Engine 結構描述和執行個體物件,例如資料表、檢視表和登入。DAC 在整個相關應用程式的開發、部署與管理週期中,都會當做單一管理單位來運作。DAC 也包含定義 DAC 部署必要條件的原則。DAC 可以部署至 SQL Server 2008 R2 和 SQL Azure 的執行個體。

如需有關 DAC 的詳細資訊,請參閱:

DAC Framework 1.1 Feature Pack

Visual Studio 2010 Service Pack 1 (SP1) 包含的新 DAC Framework 1.1 可將 DAC 升級從並存升級變更為就地升級。在 SQL Azure 上也支援就地升級,但不支援並存升級。DAC Framework 1.1 也會變更 DAC 封裝 (.dacpac) 檔案的格式。雖然 DAC Framework 1.1 支援使用舊版 DAC Framework 1.0 建立的 DAC 封裝,但是仍然執行 DAC Framework 1.0 的用戶端無法處理使用 DAC Framework 1.1 建立的 DAC 封裝。SQL Server 2008 R2 客戶可以透過下載並安裝 DAC Framework 1.1 Feature Pack,升級到 DAC Framework 1.1。目前的計劃是將 DAC Framework 1.1 納入未來的 SQL Server 2008 R2 Service Pack。

如需執行就地升級的詳細資訊,請參閱<如何:升級資料層應用程式>。

與 SQL Azure 的連接

SQL Server 2008 R2 推出了從用戶端公用程式連接到 SQL Azure 資料庫的功能:

  • 產生和發佈指令碼精靈可以使用 SQL Azure 當做它所發行之指令碼的來源和目的地。如需詳細資訊,請參閱<使用產生和發佈指令碼精靈>。

SQL Server PowerShell 提供者

SQL Server 2008 R2 引進新的 SQLSERVER:\Utility 和 SQLSERVER:\DAC 資料夾,以支援 PowerShell 指令碼中的 SQL Server 公用程式和資料層應用程式。如需詳細資訊,請參閱<使用 SQL Server PowerShell 提供者>。

網路連接

VIA 通訊協定已被取代。未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。.

例外狀況訊息方塊命名空間

Microsoft.NetEnterpriseServers 命名空間之前是未記載的命名空間,其功能與 Microsoft.SqlServer.MessageBox 命名空間重複。未來的 Microsoft SQL Server 版本將移除這項功能。請避免在新的開發工作中使用這項功能,並規劃修改目前使用這項功能的應用程式。 請改用 Microsoft.SqlServer.MessageBox 命名空間。

SQL Server 2008 的新增功能

資料庫管理

稽核

SQL Server Audit 是 SQL Server 2008 的新功能,可讓您建立 Database Engine 事件的自訂稽核。SQL Server Audit 會使用擴充的事件來記錄稽核的資訊,而且提供了一些工具和程序,您必須擁有這些工具和程序,才能啟用、儲存及檢視各種伺服器和資料庫物件的稽核。如需詳細資訊,請參閱<稽核 (Database Engine)>。

備份壓縮

SQL Server 2008 Enterprise 中已導入備份壓縮。從 SQL Server 2008 R2 開始,SQL Server 2008 R2 Standard 以及所有更新的版本都支援備份壓縮。每個版本的 SQL Server 2008 都可以儲存壓縮的備份。您可以針對個別的備份、備份作業或記錄傳送組態來變更備份壓縮行為。如需詳細資訊,請參閱<備份壓縮 (SQL Server)>。

根據預設,備份壓縮會大幅增加 CPU 使用量,因而可能會對並行作業造成不良的影響。您可以在資源管理員限制 CPU 使用量的工作階段中建立低優先權的壓縮備份。如需詳細資訊,請參閱<如何:使用資源管理員來限制備份壓縮的 CPU 使用量 (Transact-SQL)>。

異動資料擷取

異動資料擷取會針對將累加式載入從來源資料表有效執行到資料超市和資料倉儲的挑戰,提供有效的解決方案。異動資料擷取會擷取套用至 SQL Server 資料表的插入、更新和刪除活動,並以方便取用的關聯式格式提供變更的詳細資料。異動資料擷取所使用的變更資料表包含鏡像追蹤來源資料表之資料行結構的資料行,以及了解已發生之變更所需的中繼資料。如需詳細資訊,請參閱<異動資料擷取的基本概念>。

變更追蹤

SQL Server 變更追蹤可讓應用程式取得使用者資料表的累加變更。當需要雙向同步處理時,變更追蹤也可讓應用程式檢查是否有資料衝突。隨著變更追蹤整合到 SQL Server 2008 的同時,開發人員不需要再建立複雜的自訂變更追蹤方案。

在變更追蹤功能整合至 SQL Server 之前,開發人員通常會建立使用了觸發程序、時間戳記資料行、其他額外資料行和其他資料表之組合的自訂變更追蹤方案。現在,開發同步處理應用程式會更容易而且更快速。

如需詳細資訊,請參閱<變更追蹤>。

資料收集器

SQL Server 2008 導入了資料收集器,可讓您用於取得並儲存從數個來源所蒐集的資料。資料收集器會提供資料收集容器,可讓您用於決定在 SQL Server 伺服器系統上進行資料收集的範圍和頻率。如需詳細資訊,請參閱<資料收集器簡介>。

偵測與版本相關的資料庫移轉問題

您可以使用 sys.dm_db_persisted_sku_features (Transact-SQL) 檢視來識別會讓資料庫無法移至不同 SQL Server 2008 版本的功能。

事件和效能計數器

取代計數器

效能計數器和追蹤事件可用於追蹤已被取代功能的使用方式。如需詳細資訊,請參閱<SQL Server、Deprecated Features 物件>和<SQL Server 2008 R2 中已被取代的 Database Engine 功能>。

DDL 觸發程序和事件通知

您可以建立 DDL 觸發程序和事件通知的目標事件類別已擴充成包括執行類似 DDL 作業的許多預存程序。如需事件的清單,請參閱<DDL 事件>和<DDL 事件群組>。此外,事件的 XML 結構描述會與 Database Engine 一起安裝,而且您也可以在網際網路上取得此結構描述。如需詳細資訊,請參閱<EVENTDATA (Transact-SQL)>。

sp_configure 選項

access check cache quota 和 access check cache bucket count 選項會控制用於 access check result cache 的項目數和雜湊值區數。如需詳細資訊,請參閱<存取檢查快取選項>。

伺服器管理

中央管理伺服器

SQL Server 2008 導入了管理多部伺服器的新方法,可讓您指定中央管理伺服器。指定為中央管理伺服器的 SQL Server 執行個體會維護一份已註冊伺服器的清單。如需詳細資訊,請參閱<使用中央管理伺服器管理多部伺服器>。

動態管理檢視

有五個新的動態管理檢視可呈現記憶體資訊:

sys.dm_os_sys_info 動態管理檢視已經停止 cpu_ticks_in_ms 資料行,而且已經加入兩個新的資料行:sqlserver_start_time_ms_ticks 和 sqlserver_start_time。

熱新增 CPU

SQL Server 2008 支援以動態方式將 CPU 加入至執行中的系統。新增 CPU 可發生於實體上新增硬體、邏輯上進行線上硬體分割或是虛擬上透過虛擬化層時。如需詳細資訊,請參閱<熱新增 CPU>。

Optimize for ad hoc workloads 選項

optimize for ad hoc workloads 選項是新的伺服器組態選項,可用於針對包含許多使用一次特定批次的工作負載,改善計畫快取的效率。如果這個選項設定為 1,Database Engine 就會在首次編譯批次時,將小型已編譯計畫虛設常式 (而非完整的已編譯計畫) 儲存在計畫快取中。這會透過避免計畫快取填滿不重複使用的已編譯計畫,協助減輕記憶體不足的壓力。如需詳細資訊,請參閱<設定伺服器組態選項>。

資源管理員

資源管理員是一項功能,可讓您用於管理 SQL Server 工作負載和系統資源耗用量。資源管理員可讓您限制內送應用程式要求可用的 CPU 和記憶體量。如需詳細資訊,請參閱<使用資源管理員來管理 SQL Server 工作負載>。

SQL Server 擴充的事件

SQL Server 2008 導入了 SQL Server 擴充的事件,這是伺服器系統的事件基礎結構。這個擴充的事件版本可讓您使用事件當做追蹤點,藉以針對主機處理序的執行階段開啟視窗。然後,這些事件就可以在記憶體中彙總、傳送至檔案或輸出至 Windows 事件追蹤 (ETW)。如需詳細資訊,請參閱<SQL Server 擴充的事件簡介>。

以原則為基礎的管理

在 Microsoft 持續努力減少整體擁有成本的過程中,SQL Server 2008 導入了以原則為基礎的管理,這是管理 SQL Server 的新架構。原則會包含檢查條件 (原則所評估的狀態) 和篩選條件 (所評估的目標集)。例如,系統管理員可以設定針對所有 SQL Server 執行個體關閉 SQL Mail 的原則,或是 AdventureWorks2008R2 資料庫中 Marketing 結構描述之資料表應該具有以 "mk_pr_" 開頭之名稱的原則。

以原則為基礎的管理會提供下列優點:

  • 可確保符合系統組態的原則。

  • 可針對組態撰寫原則來防止或監視對系統進行變更。

  • 可簡化管理工作來減少整體擁有成本。

  • 可在 SQL Server Management Studio 中偵測符合問題。

  • 可讓原則同時在多部伺服器上執行:

  • 包含內建的函數以及針對允許原則套用至指定之系統狀態和目標集的條件運算式,執行使用者定義 Transact-SQL 查詢和使用者定義 WMI/WQL 查詢的能力。

  • 包含超過 40 個現成的原則,而且這些原則會對應至 Best Practices Analyzer 的規則和介面區組態的預設系統狀態設定。您必須將原則匯入 Database Engine 的執行個體。如需詳細資訊,請參閱<如何:匯出和匯入以原則為基礎的管理原則>。

除了匯入現成的原則以外,您也可以直接從 [檔案/新增] 功能表建立新的原則。

如需詳細資訊以及有關如何使用以原則為基礎之管理的教學課程,請參閱<使用以原則為基礎的管理來管理伺服器>。

SQL Server Management Studio

查詢編輯器

Transact-SQL 偵錯工具

Database Engine 查詢編輯器現在包含類似於 Visual Studio 偵錯工具的 Transact-SQL 偵錯工具。Transact-SQL 偵錯工具可透過在特定的陳述式上暫停執行作業,然後顯示資料值和系統資訊 (例如 Transact-SQL 呼叫堆疊和儲存在變數與參數中的值),協助您找出 Transact-SQL 程式碼中的問題。如需詳細資訊,請參閱<使用 Transact-SQL 偵錯工具>。

IntelliSense

Database Engine 編輯器現在會提供 IntelliSense 功能,例如文字完成、錯誤底線、參數說明、色彩化、快速資訊、大綱和語法組比對。IntelliSense 會提供給常用的 Transact-SQL 元素。在未來的版本中,它將擴充至其他 Transact-SQL 元素。如需詳細資訊,請參閱<使用 IntelliSense>。

Database Engine 錯誤清單視窗

SQL Server Management Studio 包含 [錯誤清單] 視窗,它會顯示 Database Engine 查詢編輯器中 IntelliSense 程式碼所產生的語法和語意錯誤。如需詳細資訊,請參閱<錯誤清單視窗 (Management Studio)>。

物件總管

SQL Server Management Studio 的 [物件總管詳細資料] 視窗已經以下列方式強化:

  • 您可以自訂 [物件總管詳細資料] 視窗所顯示的資料行。若要針對選取的物件類型查看可能的資料行清單,請以滑鼠右鍵按一下資料行標題。若要重新排序顯示,您可以拖曳資料行。

  • 選取之項目的屬性會顯示在 [物件總管詳細資料] 視窗的底部。若要查看其他屬性,請向上拖曳狀態列的主題框線,藉以放大狀態列。

Transact-SQL 和 MDX 程式碼編輯器的底部具有色彩編碼的狀態列。此狀態列會提供有關編輯器連接的資訊,而且當程式碼編輯器具有多個連接時,此狀態列就會變更色彩。

您可以在程式碼編輯器視窗的標題列中加入或移除項目的名稱。若要自訂索引標籤名稱,請在 [工具] 功能表上,按一下 [選項],然後選取 [文字編輯器][編輯器索引標籤和狀態列頁面]

Management Studio 會針對在 [物件總管] 中選取的項目包含強化的詳細資料顯示。您可以調整資料行的大小、進行排序和重新組織,而且新的導覽按鈕可讓您移至父物件或上一個造訪的物件。此外,您可以在詳細資料區域中選取多個物件,以便針對它們個別執行動作或將它們當做群組執行動作。

現在從 [物件總管詳細資料] 中的物件進行同步處理時,將會在 [物件總管] 中選取個別項目,而非其父物件。此外,您可以從屬性的清單中選取要顯示的資料行,而且當您導覽時,排序和選取範圍會維持不變。而且,系統會針對選取的物件,在詳細資料區域底部的可調整大小區域中顯示屬性的清單。如需詳細資訊,請參閱<使用物件總管詳細資料和 SQL Server 物件搜尋>。

物件總管中的 Service Broker 節點

[物件總管] 具有 Service Broker 交談優先權的新節點。此外,其他 Service Broker 節點現在會顯示額外的功能表選項,包括 [屬性] (當您以滑鼠右鍵按一下節點時)。如需詳細資訊,請參閱<Service Broker 物件屬性 F1 說明>。

客戶要求的改進

SQL Server Management Studio 具有下列客戶要求的改進:

  • 在 [查詢編輯器] 視窗中,您可以透過開啟已註冊伺服器群組的查詢視窗,同時查詢多部伺服器。這些查詢結果可以結合到單一結果窗格中,也可以在不同的結果窗格中傳回。如需詳細資訊,請參閱<使用中央管理伺服器管理多部伺服器>。

  • 您可以從 [查詢編輯器] 視窗、[查詢] 功能表、[查詢編輯器] 工具列或按下 CTRL+ALT+P,存取 SQL Server Profiler。

  • 您現在可以使用 Return Top n rows 選項來開啟資料表。

  • 您可以設定開啟資料表時傳回的資料列數目。

  • [工具/選項] 功能表上,您可以指定在 [物件總管] 中按兩下資料表時所產生的動作。

  • 您可以封鎖資料表設計工具,讓它不會在您實作設計變更時重新建立資料表。

  • 您可以使用其他資料行來自訂 [物件詳細資料] 頁面,而且此頁面現在支援搜尋。如需詳細資訊,請參閱<使用物件總管詳細資料和 SQL Server 物件搜尋>。

  • 當您使用 SQL Server Management Studio 進行連接時,可以將其他連接參數加入至連接字串。如需詳細資訊,請參閱<連接到伺服器 (其他連接參數頁面)>。

SQL Server PowerShell 提供者和指令程式

SQL Server 2008 導入了兩個 PowerShell 嵌入式管理單元 dll 檔案,可實作下列項目:

  • SQL Server PowerShell 提供者,可將 SQL Server 管理物件模型公開成與檔案系統路徑相似的路徑。路徑中的每個節點都與 SQL Server 管理物件類別相關聯。

  • 一組 SQL Server PowerShell 指令程式,可用於進行工作,例如執行 sqlcmd 指令碼、評估原則或編碼用於 PowerShell 路徑中的分隔識別碼。

此外,還有一項新的 sqlps 公用程式,可啟動使用提供者和嵌入式管理單元等 SQL Server 功能所設定的 PowerShell 環境。PowerShell 子系統已經加入至 SQL Server Agent,所以您可以依照排程或針對 Database Engine 事件的回應來執行 PowerShell 指令碼。您可以在 SQL Server Management Studio 中以滑鼠右鍵按一下 [物件總管] 節點,藉以啟動 SQL Server PowerShell 工作階段。如需詳細資訊,請參閱<SQL Server PowerShell 概觀>。

請參閱

概念

變更記錄

更新的內容

已加入 DAC Framework 1.1,表示現在使用 1.1 的就地升級支援 SQL Azure。