監視和疑難排解受控資料庫物件

適用於:SQL Server

本主題提供可用來監視和疑難排解 SQL Server 中執行之 Managed 資料庫物件和元件的工具相關資訊。

分析工具追蹤事件

SQL Server 提供 SQL 追蹤和事件通知,以監視 Database Engine 中發生的事件。 藉由記錄指定的事件,SQL 追蹤可協助您針對效能進行疑難排解、稽核資料庫活動、收集測試環境的範例資料、偵錯 Transact-SQL 語句和預存程式,以及收集效能分析工具的資料。 如需詳細資訊,請參閱 SQL 追蹤 擴充事件

活動 描述
元件載入事件類別 用來監視元件載入要求(成功和失敗)。
SQL:BatchStarting 事件類別 SQL:BatchCompleted 事件類別 提供已啟動或完成之 Transact-SQL 批次的相關資訊。
SP:Starting 事件類別 SP:Completed 事件類別 用來監視 Transact-SQL 預存程式的執行。
SQL:StmtStarting 事件類別 SQL:StmtCompleted 事件類別 用來監視 CLR 和 Transact-SQL 常式的執行。

效能計數器

SQL Server 提供物件和計數器,可供系統監視器用來監視執行 SQL Server 實例的電腦中的活動。 物件是任何 SQL Server 資源,例如 SQL Server 鎖定或 Windows 進程。 每個物件都包含一個或多個計數器,可決定欲監視之物件的不同層面。 如需詳細資訊,請參閱 使用 SQL Server 物件

Object 描述
SQL Server、CLR 物件 CLR 執行所花費的總時間。

Windows 系統監視器 (PERFMON.EXE) 計數器

Windows 系統監視器 (PERFMON.EXE) 工具有數個效能計數器,可用來監視 CLR 整合應用程式。 .NET CLR 效能計數器可由 「sqlservr」 進程名稱篩選,以追蹤目前正在執行的 CLR 整合應用程式。

Performance 物件 描述
SqlServer:CLR 提供伺服器的 CPU 統計資料。
.NET CLR 例外狀況 追蹤每秒的例外狀況數目。
.NET CLR 載入 提供在伺服器中載入之 AppDomains 和元件的相關資訊。
.NET CLR 記憶體 提供 CLR 記憶體使用量的相關資訊。 如果記憶體使用量太大,這個物件可用來標記警示。
.NET Data Provider for SQL Server 追蹤每秒的連線和中斷連線數目。 此物件可用於監視資料庫活動的層級。

目錄檢視

目錄檢視會傳回 SQL Server 資料庫引擎所使用的資訊。 我們建議您使用目錄檢視,因為它們是目錄中繼資料的最一般介面,並提供最有效率的方式來取得、轉換及呈現此資訊的自訂形式。 所有使用者可用的目錄中繼資料都會透過目錄檢視公開。 如需詳細資訊,請參閱目錄檢視 (Transact-SQL)

目錄檢視 描述
sys.assemblies (Transact-SQL) 傳回資料庫中註冊之元件的相關資訊。
sys.assembly_references (Transact-SQL) 識別參考其他元件的元件。
sys.assembly_modules (Transact-SQL) 傳回元件中定義之每個函式、預存程式和觸發程式的相關資訊。
sys.assembly_files (Transact-SQL) 傳回資料庫中註冊之元件檔的相關資訊。
sys.assembly_types (Transact-SQL) 識別元件所定義的使用者定義型別(UDT)。
sys.module_assembly_usages (Transact-SQL) 識別 CLR 模組所定義的元件。
sys.parameter_type_usages (Transact-SQL) 傳回使用者定義型別之參數的相關資訊。
sys.server_assembly_modules (Transact-SQL) 識別定義 CLR 觸發程式的元件。
sys.server_triggers (Transact-SQL) 識別伺服器上的伺服器層級 DDL 觸發程式,包括 CLR 觸發程式。
sys.type_assembly_usages (Transact-SQL) 識別使用者定義型別所定義的元件。
sys.types (Transact-SQL) 傳回資料庫中註冊的系統與使用者定義型別。

動態管理檢視

動態管理檢視和函式會傳回伺服器狀態資訊,可用來監視伺服器實例的健康情況、診斷問題及調整效能。 如需詳細資訊,請參閱 動態管理檢視和函式(Transact-SQL)。

DMV 描述
sys.dm_clr_appdomains (Transact-SQL) 提供伺服器中每個應用程式域的相關資訊。
sys.dm_clr_loaded_assemblies (Transact-SQL) 識別伺服器上註冊的每個受控元件。
sys.dm_clr_properties (Transact-SQL) 傳回託管 CLR 的相關資訊。
sys.dm_clr_tasks (Transact-SQL) 識別目前正在執行的所有 CLR 工作。
sys.dm_exec_cached_plans (Transact-SQL) 傳回 SQL Server 快取之查詢執行計畫的相關資訊,以加快查詢執行速度。
sys.dm_exec_query_stats (Transact-SQL) 傳回快取查詢計劃的匯總效能統計資料。
sys.dm_exec_requests (Transact-SQL) 傳回在 SQL Server 內執行之每個要求的相關資訊。
sys.dm_os_memory_clerks (Transact-SQL) 傳回 SQL Server 實例中目前使用的所有記憶體 Clerk,包括 CLR 記憶體 Clerk。

另請參閱

Common Language Runtime (CLR) 整合程式設計概念