DAS支持巡檢評分功能,可以對目標實例進行定期巡檢并給出健康評分,幫助您清楚地了解數據庫運行情況。本文介紹巡檢評分的評分項及評分規則。
注意事項
評分規則表
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)