SQLServer性能優化之---數據庫級日記監控
瀏覽量: 次 發布日期:2023-10-11 19:26:20
SQLServer性能優化之---數據庫級日記監控
4.6.6.SQLServer監控
1.圖形化演示
2.SQL的方式
SQL附錄
1.配置發件人郵箱
2.發生預警郵箱
3.郵件查詢相關
4.6.6.1 發送郵件
4.6.6.2.監控實現
腳本示意:https://github.com/lotapp/BaseCode/tree/master/database/SQL/SQLServer
PS:這些腳本都是我以前用SQLServer手寫的,參考即可(現在用MySQL,下次也整理一下)
之前寫SQLServer監控系列文章因為換環境斷篇了,只是簡單演示了下基礎功能,現在準備寫 監控相關內容了,于是補了下:
SQLServer性能優化之---數據庫級日記監控:https://www.cnblogs.com/dunitian/p/6022967.html
在說監控前你可以先看下數據庫發郵件:https://www.cnblogs.com/dunitian/p/6022826.html
應用:一般就是設置個定時任務,把耗時SQL信息或者錯誤信息通過郵件的方式及時預警
好處就太多了,eg:客戶出錯如果是數據庫層面,那瞬間就可以場景重放(PS:等客戶找會降低業績)
以往都是程序的 + 來捕獲錯誤,但數據庫定時任務之類的出錯程序是捕獲不到的,所以就需要數據庫層面的監控了
PS:開發的時候通過 來監控
先說說本質吧:SQLServer2012的XEVENT機制已經完善,eg:常用的擴展事件 就可以在錯誤的時候通過郵件來通知管理員了
PS:擴展事件性能較高,而且比較輕量級
PS:SQLServer的監控大體思路三步走:, , 4.6.6.1 發送郵件
這個之前講過,這邊就再說下SQL的方式:1.配置發件人郵箱
這個配置一次即可,以后使用就可以直接通過配置名發郵件:
2.發生預警郵箱
同樣我只演示SQL的方式,圖形化的方式可以看我以前寫的文章:
效果:
3.郵件查詢相關
主要用途其實就是出錯排查:
4.6.6.2.監控實現
會了郵件的發送,那下面就是監控了1.圖形化演示
不推薦使用圖形化的方式,但可以來理解擴展事件的監控
1.新建一個會話向導(熟悉后可以直接新建會話)
2.設置需要捕獲的擴展事件
3.這邊捕獲的全局字段和左邊SQL是一樣的(截圖全太麻煩了,所以偷個懶,后面會說怎么生成左邊的核心SQL)
4.自己根據服務器性能設置一個合理的值(IO、內存、CPU)
上海數據恢復5.生成核心SQL(我們圖形化的目的就是生成核心SQL,后面可以根據這個SQL自己擴展)
6.核心代碼如下
7.啟動會話后一個簡單的擴展事件監控就有了
8.SQLServer提供了查看方式
9.日志可以自己查下
2.SQL的方式
上面只是過家家,主要目的就是讓大家知道核心SQL是怎么來的,憑什么這么寫
下面就來個制定化監控:
先截圖演示下各個核心點,然后貼一個我封裝的存儲過程附件
1.擴展事件相關的核心代碼
2.內存中數據存儲到臨時表
3.臨時表中的數據存儲到自己建立的表中
我拋一個課后小問給大家:為什么先存儲在臨時表中?(提示:效率)
4.發送監控提醒的郵件
5.看看數據庫層面多了什么:
6.來個測試
7.效果(可以自己美化)
SQL附錄
下節預估:定時任務、完整版監控
PS:估計先得更八字的文章(拖太久)然后更完SQLServer更MySQL,等MySQL監控更完會說下備份與恢復,接著我們開架構篇(MyCat系列先不講放在Redis和爬蟲系列的后面)
. emcc存儲和ssd,EMCC存儲優化與SSD性能提升技術解析
. sqlserver誤刪數據庫怎么恢復,全面解析與實操步驟
. 恢復數據,SEO優化新策略——探索雙標題在提升文章收錄與排名中的優勢
. 優化數據庫的八種方法,高效優化數據庫,輕松實現查詢加速與性能提升
. sqlserver可疑數據庫恢復,SQL Server 可疑數據庫恢復全攻略
. sqlserver2008數據庫可疑,SQL Server 2008數據庫可疑狀態解
. DiskGenius組raid,輕松實現數據安全與性能提升
. sqlserver備份到其他服務器,SQL Server數據庫備份到其他服務器的實用
. oracle執行存儲過程執行時間,Oracle存儲過程執行時間分析及優化策略