SQL Server Dynamic Management Objects, DMOs


  1. 說明
    1. Server Levels
    2. Database Levels
  2. 相關連結

筆記 SQL Server 實用的 SQL Server Dynamic Management Objects, DMOs 用於資料庫管理、問題處理 Trouble Shooting 所使用。

SQL Server Logo

說明

DMOs 說明
sys.dm_server_services 查詢資料庫伺服器下服務的啟動資訊
sys.dm_db_file_space_usage 顯示特定資料庫的檔案資訊,包含檔案配置大小及使用大小
sys.dm_db_log_space_usage 顯示特定資料庫的交易紀錄資訊,包含檔案配置大小及使用大小
sys.dm_db_index_physical_stats 以資料表或檢視為單位,查詢所引的大小及碎片化程度
sys.dm_db_index_usage_stats 顯示所有的索引使用資訊
sys.dm_db_partition_stats 顯示 Partition 的資料頁以及資料列資訊 (Data Pages & Rows)
sys.dm_db_missing_index_details 顯示所有資料庫推薦建立的遺漏索引 (Missing Indexes)
sys.dm_db_missing_index_group_stats 顯示遺漏索引所相關的查詢使用資訊
sys.dm_db_missing_index_groups 多對多關聯,index_handle 對應 index_details ; index_group_handle 對應 index_group_stats 的 group_handle
sys.dm_exec_requests 查詢執行中的 Request 資訊
sys.dm_exec_query_plan 可以使用 exec_requests 查詢到的 sql_handle 還原為執行計畫資訊 (Execution Plan)
sys.dm_exec_sql_text 可以使用 exec_requests 查詢到的 sql_handle 還原為原始查詢 TSQL
sys.dm_exec_query_stats 查詢執行計畫的彙整統計資訊
sys.dm_exec_sessions 查詢目前的 Sessions
sys.dm_tran_locks 查詢目前的 Locks 以及 Block 的資訊
sys.dm_os.waiting_tasks 查詢封鎖及造成封鎖問題的 Process

索引與物件的關聯

索引的使用情形

索引包含的欄位資訊

索引的遺失建立建議

Server Levels

DMOs 說明
sys.databases 查詢所有的資料庫資訊
sys.master_files 查詢所有資料庫的檔案資訊
sys.all_objects 顯示所有的資料庫物件 (Database Objects)
sys.all_columns 顯示所有的資料欄資訊 (Columns)
sys.all_views 顯示所有的檢視資訊 (View)

Database Levels

DMOs 說明
sys.objects 顯示所有的資料庫物件,包含 Table, StoredProcedures, View, Constraint 等
sys.tables 顯示所有的資料表 (Table)
sys.indexes 顯示所有的 Index 及 Heap
sys.index_columns 顯示索引所擁有的資料欄 (Columns)
sys.columns 顯示所有的資料欄資訊 (Columns)
sys.types 顯示所有的資料型別資訊 (Data Types)

相關連結

SQL Server Integrated Service 初探

SQL Server 閃電般快速查詢指南⚡

SQL Server 周邊工具彙整筆記

SQL Server 學習資源筆記