直接答案
執行以下擴展存儲過程即可獲取處理器數量與類型:
EXEC master..xp_msver N'ProcessorCount', N'ProcessorType'
舉一反三:如何自己發現這類系統信息查詢方法
作者分享了一個通用的「授人以漁」技巧——**利用 SQL Server Profiler 追蹤企業管理器的操作**來反推底層 T-SQL:
- 打開 SQL Server Profiler,新建追蹤,連接目標實例
- 事件選擇中勾選「Stored Procedures」→「SP:StmtCompleted」等
- 打開企業管理器,右鍵實例 →「屬性」→「處理器」頁籤,觀察顯示的核心數
- 回到 Profiler,停止追蹤,過濾
xp_msver 關鍵字
- 即可看到企業管理器調用的確切語句:
EXEC master..xp_msver 'ProcessorCount', 'ProcessorType'
此法通用於:
- 企業管理器 / SSMS 所有屬性頁面的底層查詢
- 任何 GUI 操作對應的 T-SQL 反推
- 快速學習系統元數據查詢方法
xp_msver 完整可查詢屬性
| 屬性名 | 說明 |
ProcessorCount | 邏輯處理器核心數 |
ProcessorType | 處理器類型(如 x86 Family 6 Model 85 Stepping 4) |
PhysicalMemory | 物理內存大小(MB) |
ProductVersion | SQL Server 產品版本號 |
ProductLevel | 服務包級別(RTM/SP1/SP2...) |
WindowsVersion | Windows 版本號 |
Platform | 平台標識 |
完整列表可執行 EXEC master..xp_msver(無參數)查看。
現代替代方案(SQL Server 2008+)
推薦使用 DMV 查詢,更標準、權限可控、無需啟用擴展存儲過程:
-- 邏輯處理器數
SELECT cpu_count FROM sys.dm_os_sys_info;
-- 詳細 CPU 信息
SELECT * FROM sys.dm_os_sys_memory;
總結
xp_msver 是快速獲取硬件信息的經典工具;但**學會用 Profiler 反推 GUI 底層語句**,才是 DBA 成長的關鍵技能——這樣你永遠不需要背誥命令,遇到新問題也能自行破解。
- 上一篇文章: TOP N 子句 vs SET ROWCOUNT N:性能對比與適用場景深度解析
- 下一篇文章: SQL Server 全半角字符比較問題:排序規則 Width-Sensitive 詳解
Copyright ©
程式碼之家 All Rights Reserved