本文主要給大家介紹獲取MySQL整體性能的狀態(tài),希望可以給大家補(bǔ)充和更新些知識(shí),如有其它問(wèn)題需要了解的可以持續(xù)在Vecloud行業(yè)資訊里面關(guān)注我的更新文章的。
獲取云服務(wù)器整體的性能狀態(tài)首先對(duì)一個(gè)數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行性能優(yōu)化需要先知道服務(wù)器當(dāng)前主要的性能問(wèn)題出現(xiàn)在哪里,在這點(diǎn)sql server也是類似,sql server首先會(huì)分析當(dāng)前服務(wù)器的等待類型的情況。
我們可以使用show [session|global] status命令來(lái)獲取想要的信息,默認(rèn)是顯示當(dāng)前連接的所有統(tǒng)計(jì)參數(shù)值,還可以直接查詢information_schema數(shù)據(jù)庫(kù)中的session_status表。
showstatus;#或者使用useinformation_schema;select*fromSESSION_STATUS;我當(dāng)前的mysql版本是5.6.21,總共查詢出了341行參數(shù)。
這里有一篇文章詳細(xì)分析了每一個(gè)參數(shù)值的所代表的意思:http://blog.sina.com.cn/s/blog_68baf43d0100vu2x.html
SQL操作計(jì)數(shù)接下來(lái)我們主要分析里面的com_參數(shù),com_參數(shù)各種SQL對(duì)數(shù)據(jù)庫(kù)執(zhí)行的操作。
showstatuslike'com_%';#或者使用useinformation_schema;select*fromSESSION_STATUSWHEREvariable_namelike'com_%';
各種SQL操作計(jì)數(shù)總共有142個(gè),不同的版本結(jié)果不一樣,接下來(lái)就來(lái)測(cè)試一下,表中的alter table的當(dāng)前連接的操作次數(shù)為0,現(xiàn)在我修改一下表看看結(jié)果。
ALTERTABLEtestADDNameCHAR(10)NOTNULL;showstatuslike'com_%';
可以看到alter_table計(jì)數(shù)增加了1。
com_計(jì)數(shù)里面有幾個(gè)比較重要的參數(shù),其它的一些參數(shù)也經(jīng)常用來(lái)做參考。
com_delete:執(zhí)行delete操作的次數(shù)。
com_select:執(zhí)行select操作的次數(shù)。
com_insert:執(zhí)行insert操作的次數(shù),對(duì)應(yīng)批量插入操作無(wú)論里面循環(huán)多少次都只算一次。
com_update:執(zhí)行update操作的次數(shù)。
com_commit:執(zhí)行事務(wù)提交的次數(shù)。
com_rollback:執(zhí)行事務(wù)回滾的次數(shù)。
上面的計(jì)數(shù)包括所有的存儲(chǔ)引擎,有幾個(gè)參數(shù)是單獨(dú)針對(duì)innodb存儲(chǔ)引擎,記錄了read,inserted,updated,deleted每種操作的行數(shù)。
showstatuslike'innodb_rows%';#或者使用useinformation_schema;select*fromSESSION_STATUSWHEREvariable_namelike'innodb_rows%';定位效率低的SQL語(yǔ)句1.可以通過(guò)慢查詢?nèi)罩緛?lái)定位,慢查詢只能查詢已經(jīng)執(zhí)行結(jié)束的語(yǔ)句,如果要查詢當(dāng)前正發(fā)生的問(wèn)題無(wú)法做到,這個(gè)方法在后面一篇文章介紹mysql日志會(huì)詳細(xì)介紹。
IPLC是純內(nèi)網(wǎng)的專線,穩(wěn)定性好,延時(shí)低,對(duì)網(wǎng)絡(luò)品質(zhì)有要求的核心產(chǎn)品,可以通過(guò)使用IPLC專線服務(wù)來(lái)提升網(wǎng)絡(luò)體驗(yàn)和服務(wù)。