監視事件
SQL Server 提供「SQL 追蹤」與事件通知,可監視 Database Engine 中所發生的事件。
SQL 追蹤可記錄指定的事件,藉以協助您進行效能的疑難排解、稽核資料庫活動、收集測試環境的樣本資料、為 Transact-SQL 陳述式與預存程序偵錯,以及收集效能分析工具的資料等。您可以透過 SQL Server Profiler、圖形化使用者介面、或在命令列中輸入 Transact-SQL 系統預存程序,來存取 SQL 追蹤。
「SQL 追蹤」執行時,會擷取 Database Engine 中所發生的事件。所擷取的事件,即為您在名為 trace 的處理序中選擇要監視的事件類別執行個體。每個事件類別都含有事件名稱與資料行,可針對發生的特定事件類別說明其屬性。若發生的事件屬於追蹤中所指定的事件類別,SQL 追蹤即會在追蹤檔案中記錄事件名稱與相關聯的資料。
通常您可以透過 SQL Server Profiler 來存取 SQL 追蹤。您也可以使用 Transact-SQL 系統預存程序來存取 SQL 追蹤。SQL Server Profiler 可利用 SQL 追蹤的所有事件擷取功能,還有能力追蹤到資料表的資訊 (或來自資料表的資訊)、將追蹤定義儲存為範本、將查詢計畫與死結事件擷取為個別的 XML 檔案,以及重新執行追蹤結果以進行診斷與最佳化。
事件通知會傳送資訊給 Service Broker 服務,指出 SQL 追蹤擷取了多少相同的事件。但與追蹤不同的是,事件通知可用來在 SQL Server 內部執行動作,以回應事件。由於事件通知是以非同步方式執行,因此這些動作並不會耗用即時交易所定義的任何資源。
下列主題將說明如何使用 SQL Server Profiler、SQL 追蹤以及事件通知來監視事件。
[!附註]
在 SQL Server 2008 中,您也可以使用擴充的事件來排除效能問題。擴充的事件可讓您更深入檢視 SQL Server 的內部工作,而且可用於更進階的疑難排解案例。如需詳細資訊,請參閱<SQL Server 擴充的事件>。
本章節內容
主題 |
說明 |
---|---|
說明 SQL 追蹤的運作方式,以及如何以預存程序建立追蹤。 |
|
說明如何以 SQL Server Profiler 進行追蹤。 |
|
包含微調伺服器作業以提升公用程式與工具效能的相關資訊。 |
|
包含如何微調 SQL Server 以使伺服器效能最佳化的相關資訊。 |
|
說明事件通知的運作方式,以及如何使用它們來監視及回應資料庫與伺服器事件。 |
|
包含如何使用 SQL Server Management Studio 來監視 SQL Server 效能的相關資訊。 |
|
包含如何使用 SQL Server 錯誤記錄檔與 Microsoft Windows 應用程式記錄檔,來監視 SQL Server 活動的相關資訊。 |
|
包含如何使用 Transact-SQL 陳述式來監視 SQL Server 執行個體的相關資訊。 |