數據庫自治服務DAS(Database Autonomy Service)提供巡檢評分功能,每天定時對所有數據庫實例進行巡檢評分,并且支持自主選擇數據庫實例和巡檢時段,手動發起巡檢評分,幫助您了解數據庫實例的運行情況。
前提條件
目標數據庫實例如下:
RDS MySQL
自建MySQL
PolarDB MySQL版
MyBase MySQL
云數據庫 Tair(兼容 Redis)
MyBase Redis
目標數據庫實例已接入DAS,并且接入狀態顯示為接入正常,接入方法詳情請參見接入數據庫實例。
開啟巡檢評分
登錄 DAS控制臺。
在左側導航欄,單擊巡檢評分。
在實例巡檢評分頁根據如下操作設置實例巡檢評分。
開啟自動巡檢評分:
單擊右上角的設置。
在彈出的設置巡檢評分功能的對話框中選中引擎,然后單擊確定,開啟巡檢評分功能。
說明開啟自動巡檢評分功能后,系統將在每天(時間隨機)對連接正常的實例進行一次評分。
手動發起巡檢評分:
單擊發起巡檢。
在彈出的巡檢實例對話框中,在選擇應用的實例區域選擇單個或多個目標實例,單擊。
在選擇巡檢時間區域,設置巡檢時間。
說明巡檢時間不能晚于當前時間,且巡檢開始時間和巡檢結束時間的間隔最小為1小時,最長為24小時。
單擊確認。
查看巡檢評分結果
開啟巡檢評分后,您可根據實例ID或實例別名進行搜索,查看不同時間范圍的巡檢評分結果。
巡檢評分實行百分制,系統會根據評分規則對實例運行情況進行扣分,具體請參見評分規則表。
單擊目標實例操作列的刪除,刪除該條巡檢評分結果。
單擊目標實例操作列的扣分詳情,查看該實例的扣分詳情表。
單擊目標實例操作列的報告,查看該實例的評分報告詳情表。
單擊目標實例ID,跳轉到實例的性能趨勢頁,查看該實例的性能趨勢。詳細內容請參見性能趨勢。
單擊按鈕,可將巡檢評分結果導出到本地。
評分規則表
RDS MySQL、自建MySQL和PolarDB MySQL版:
扣分項
含義
扣分子項
條件
所扣分數
CPU使用率(cpuUsage)
一天CPU平均使用率,多核CPU換算成單核計算。
警告
70%<=cpuUsage<=80%
1+(cpuUsage-0.7)*20
危險
cpuUsage>=80%
min[3+(cpuUsage-0.8)*30,10]
內存使用率(memUsage)
一天內存平均使用率。
警告
80%<=memUsage<=90%
1+(memUsage-0.8)*20
危險
memUsage>90%
min[(memUsage-0.9)*50, 10]
空間使用率(Space Usage)
重要自建MySQL不支持空間使用率扣分項。
已使用空間的平均值 / 總空間 * 100%。
可使用天數
availableDays<=30
15-availableDays/3
大表數量
重要PolarDB MySQL版不進行大表分析,不支持此扣分項。
bigTableCount>0
min(bigTableCount,15)
連接使用率(connectionRate)
一天內連接數平均值 / 最大允許連接數 。
警告
70%<=connectionRate<=80%
1
危險
connectionRate>80%
3
IOPS使用率(iopsUsage)
一天內IOPS平均值 /最大允許IOPS值* 100%。
警告
70%<iopsUsage<90%
3
危險
iopsUsage>90%
5
活躍會話(threadRunning)
一天內產生的活躍會話的個數。
警告
threadRunning>min(2*cpuCores+8,64)
3
危險
threadRunning>min(4*cpuCores+8,96)
9
慢SQL數量(slowSqlCount)
一天內產生的慢SQL總條數。
說明單擊后可查看執行次數Top5的慢SQL。
存在
0<slowSqlCount<100
1+(slowSqlCount-10)/30
警告
100<=slowSqlCount<500
4+(slowSqlCount-100)/30
危險
slowSqlCount>=500
min[18+(slowSqlCount-50)/30, 30)]
SQL安全審計(sqlInjectionCount)
風險SQL數量和SQL注入數量。
風險SQL
riskSqlCount>0
min(riskSqlCount,5)
SQL注入
sqlInjectionCount>0
min(sqlInjectionCount,5)
死鎖
是否在一天時間內發生死鎖。
存在
存在
3
Redis:
扣分項
含義
扣分子項
條件
扣分公式
CPU使用率(cpuUsage)
一天CPU平均使用率,多核CPU換算成單核計算。
警告
70%<=cpuUsage<=80%
1+(cpuUsage-0.7)*20
危險
cpuUsage>=80%
min[3+(cpuUsage-0.8)*30,10]
內存使用率(memUsage)
一天內存平均使用率。
警告
80%<=memUsage<=90%
1+(memUsage-0.8)*20
危險
memUsage>90%
min[(memUsage-0.9)*50, 10]
連接使用率(connectionRate)
一天內連接數平均值 / 最大允許連接數 * 100%。
警告
70%<=connectionRate<=80%
1
危險
connectionRate>80%
3
流量使用率(FlowRate)
一天內流量的平均數/最大流量 * 100%。
警告
80%<=FlowRate<=85%(包含inFlow和outFlow)
1
危險
flowRate>85%
3
危險
iopsUsage>90%
5
熱鍵(HotKey)
出現HotKey的信息。
存在
存在
3
慢SQL數量(slowSqlCount)
一天內產生的慢SQL總條數,單擊后可查看執行次數Top5的慢SQL。
存在
0<slowSqlCount<100
1+(slowSqlCount-10)/30
警告
100<=slowSqlCount<500
4+(slowSqlCount-100)/30
危險
slowSqlCount>=500
min[18+(slowSqlCount-50)/30, 30)]
內存碎片率(HighMemoryFragment)
內存碎片率的計算方式為:mem_fragmentation_ratio=used_memory_rss/used_memory
used_memory_rss ,表示操作系統實際分配給Redis的物理內存空間,里面包含了內存碎片。
used_memory,表示Redis為了保存數據實際申請使用的內存空間。
Redis內存碎片和Redis內存碎片率的更多信息,請參見Redis內存碎片。
存在
HighMemoryFragment>1.5
min(HighMemoryFragment*2, 5)
相關API
API | 描述 |
獲取數據庫實例巡檢評分的結果。 |