前言
mysqlslap是一個(gè)診斷程序,旨在模擬MySQL服務(wù)器的客戶端負(fù)載并報(bào)告每個(gè)階段的時(shí)間。它就像多個(gè)客戶端正在訪問(wèn)服務(wù)器一樣工作。
1、使用的語(yǔ)法:
mysqlslap [options]
--auto-generate-sql, -a :自動(dòng)生成測(cè)試表和數(shù)據(jù),表示用mysqlslap自己生成的SQL腳本來(lái)測(cè)試并發(fā)壓力。
--auto-generate-sql-load-type=type :測(cè)試語(yǔ)句的類型,取值包括:read,key,write,update和mixed(默認(rèn))。
--auto-generate-sql-add-auto-increment :對(duì)生成的表自動(dòng)添加auto_increment列。
--create-schema :自定義的測(cè)試庫(kù)名稱。
--commint=N :設(shè)置N條DML后提交一次。
--compress, -C :如果服務(wù)器和客戶端支持都?jí)嚎s,則壓縮信息傳遞。
--concurrency=N, -c N :表示并發(fā)量,也就是模擬多少個(gè)客戶端同時(shí)執(zhí)行select??芍付ǘ鄠€(gè)值,例如:--concurrency=100,200,500。
--detach=N :執(zhí)行N條語(yǔ)句后斷開重連。
--debug-info, -T :打印內(nèi)存和CPU的相關(guān)信息。
--engine=engine_name, -e engine_name :要測(cè)試的引擎,可以有多個(gè),用分隔符隔開。例如:--engines=myisam,innodb。
--iterations=N, -i N :測(cè)試執(zhí)行的迭代次數(shù),表示要在不同并發(fā)環(huán)境下,各自運(yùn)行測(cè)試多少次。
--number-char-cols=N, -x N :自動(dòng)生成的測(cè)試表中包含N個(gè)字符類型的列,默認(rèn)為1。
--number-int-cols=N, -y N :自動(dòng)生成的測(cè)試表中包含N個(gè)數(shù)字類型的列,默認(rèn)為1。
--number-of-queries=N :總的測(cè)試查詢次數(shù)(并發(fā)客戶數(shù)×每客戶查詢次數(shù))。
--only-print :只打印測(cè)試語(yǔ)句而不實(shí)際執(zhí)行。
--query=name,-q :使用自定義腳本執(zhí)行測(cè)試,例如可以自定義一個(gè)存儲(chǔ)過(guò)程或者sql語(yǔ)句來(lái)執(zhí)行測(cè)試。
2、案例
測(cè)試100個(gè)并發(fā),自動(dòng)生成SQL測(cè)試腳本,執(zhí)行1000次總查詢:
root# mysqlslap -uroot -p123456 -a --concurrency=100 --number-of-queries 1000
Benchmark
Average number of seconds to run all queries: 0.725 seconds
Minimum number of seconds to run all queries: 0.725 seconds
Maximum number of seconds to run all queries: 0.725 seconds
Number of clients running queries: 100
Average number of queries per client: 10
測(cè)試100個(gè)并發(fā)線程,測(cè)試次數(shù)5次,自動(dòng)生成SQL測(cè)試腳本,讀、寫、更新混合測(cè)試,自增長(zhǎng)字段,測(cè)試引擎為innodb,執(zhí)行5000次總查詢
root# mysqlslap -uroot -p123456--concurrency=100 --iterations=5 --auto-generate-sql --auto-generate-sql-load-type=mixed --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=5000
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 1.264 seconds
Minimum number of seconds to run all queries: 1.161 seconds
Maximum number of seconds to run all queries: 1.404 seconds
Number of clients running queries: 100
Average number of queries per client: 50
總結(jié)
以上所述是小編給大家介紹的Mysql5.7自帶的壓力測(cè)試命令mysqlslap及使用語(yǔ)法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
如果你覺(jué)得本文對(duì)你有幫助,歡迎轉(zhuǎn)載,煩請(qǐng)注明出處,謝謝!
您可能感興趣的文章:- MySQL壓力測(cè)試工具M(jìn)ysqlslap的使用
- MySQL壓測(cè)工具mysqlslap的介紹與使用
- MySQL壓力測(cè)試方法 如何使用mysqlslap測(cè)試MySQL的壓力?
- Mysqlslap MySQL壓力測(cè)試工具 簡(jiǎn)單教程
- Mysql官方性能測(cè)試工具mysqlslap的使用簡(jiǎn)介