SQL Server 事件探查器 是一個界面,用於創建和管理跟蹤並分析和重播跟蹤結果。 這些事件保存在一個跟蹤文件中,稍后試圖診斷問題時,可以對該文件進行分析或用它來重播一系列特定的步驟。
SQL Server 事件探查器
Microsoft SQL Server 事件探查器 是 SQL 跟蹤的圖形用戶界面,用於監視 數據庫引擎 或 Analysis Services 的實例。 您可以捕獲有關每個事件的數據並將其保存到文件或表中供以后分析。 例如,可以對生產環境進行監視,了解哪些存儲過程由於執行速度太慢影響了性能。 SQL Server 事件探查器 用於如下活動:
-
逐步分析有問題的查詢以找到問題的原因。
-
查找並診斷運行慢的查詢。
-
捕獲導致某個問題的一系列 Transact-SQL 語句。 然后用所保存的跟蹤在某台測試服務器上復制此問題,接着在該測試服務器上診斷問題。
-
監視 SQL Server 的性能以優化工作負荷。 有關為數據庫工作負荷而優化物理數據庫設計的信息
-
使性能計數器與診斷問題關聯。
注意:SQL Server 事件探查器 還支持對 SQL Server 實例上執行的操作進行審核。 審核將記錄與安全相關的操作,供安全管理員以后復查。
事件
事件是在 SQL Server 數據庫引擎實例中生成的操作。 示例包括:
- 登錄連接、失敗和斷開。
- Transact-SQL
SELECT
、INSERT
、UPDATE
和DELETE
語句。 - 遠程過程調用 (RPC) 批處理狀態。
- 存儲過程的開始或結束。
- 存儲過程中的語句的開始或結束。
- SQL 批處理的開始或結束。
- 寫入到 SQL Server 錯誤日志的錯誤。
- 在數據庫對象上獲取或釋放的鎖。
- 打開的游標。
- 安全權限檢查。
啟動SQL Profiler工具
如果你在安裝SqlServer的時候勾上了這個工具,那么就一定可以搜索的出來,我在win10的情況下直接進行搜索就可以了。
那么如果你不是win10,也可以直接打開SQL server 然后點擊工具就可以看到該工具了!
我們點擊下之后會跳出來SQL server Profiler這個工具,需要我們進行連接到 SQL Server 實例的權限。
成功連接之后會跳出一個彈框,那么在此其中去選擇你要跟蹤的事件。
SQL profiler支持多連接跟蹤,那么也就是可以分布式監控了,那么我們點擊運行,就可以看到這樣的可視化界面了。
我用它我無非就是看下執行的什么SQL還有時間了,我執行了一條這樣的sql,效果圖如下。
use EFCore
從剛才的15行直接變成了313,是不是挺可怕的,當你不限制,分布式監控的情況下一秒幾千行。。。最好還是要做一做事件限制和數據列。
那么如何保存記錄日志呢?
注意:關閉了這個可視化界面,只要你的服務沒有關閉,那么這個是一直跑着呢,怎么停止呢? (選中那么點那個)
剛才我上面說過,一下子出來了那么多記錄,我們應該怎么辦,網上很多底層的東西,類似CPU,進程號什么的,我是個渣渣,我只會TextData,大概就是這么做吧。
利用SQL profile可以記錄mssql的數據庫操作,這無疑是微軟技術的糖果。