西西軟件下載最安全的下載網(wǎng)站、值得信賴的軟件下載站!

首頁(yè)西西教程數(shù)據(jù)庫(kù)教程 → 使用sysbench 對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行cpu等多方面性能測(cè)試

使用sysbench 對(duì)MySQL數(shù)據(jù)庫(kù)進(jìn)行cpu等多方面性能測(cè)試

相關(guān)軟件相關(guān)文章發(fā)表評(píng)論 來源:西西整理時(shí)間:2012/12/11 8:43:08字體大。A-A+

作者:西西點(diǎn)擊:0次評(píng)論:0次標(biāo)簽: MySQL

  • 類型:數(shù)據(jù)庫(kù)類大小:1.7M語(yǔ)言:英文 評(píng)分:6.6
  • 標(biāo)簽:
立即下載

一、在對(duì)網(wǎng)站整體性能進(jìn)行benchmark時(shí),可以使用多種工具,比如大名鼎鼎的ab(Apache bench),http_load等工具。這里我們不關(guān)注他們的使用,如果你想了解,可以去這里。

重點(diǎn)來說MySQL的基準(zhǔn)測(cè)試如何進(jìn)行,也有很多種工具來供我們選擇,比如mysqlslap、sysbench、Super Smack等,其中mysqlslap的使用MySQL官網(wǎng)給出了介紹,Super Smack是服務(wù)器壓力測(cè)試強(qiáng)有力的工具,那么sysbench便是我們進(jìn)行MySQL基準(zhǔn)測(cè)試的很漂亮的工具了。

MYSQL
4.8
類別: 數(shù)據(jù)庫(kù)類    大。43.2M    語(yǔ)言: 英文
查看詳細(xì)信息 >>

sysbench是一款開源的多線程性能測(cè)試工具,可以執(zhí)行CPU/內(nèi)存/線程/IO/數(shù)據(jù)庫(kù)等方面的性能測(cè)試。數(shù)據(jù)庫(kù)目前支持MySQL/Oracle/PostgreSQL;

它主要包括以下幾種方式的測(cè)試:
1、cpu性能
2、磁盤io性能
3、調(diào)度程序性能
4、內(nèi)存分配及傳輸速度
5、POSIX線程性能
6、數(shù)據(jù)庫(kù)性能(OLTP基準(zhǔn)測(cè)試)

在本次試驗(yàn)中,sysbench版本為:0.4.12 MySQL版本為:5.1.61 ubuntu版本為:10.10

sysbench的基本用法通過 man sysbench 或者 sysbench --help可以方便的看到:

sysbench [general-options]... --test=<test-name> [test-options] ... command

general-options 暫且不說,test-name 包括fileio/cpu/memory/threads/mutex/oltp 等測(cè)試,command包括prepare/run/cleanup/help/version等

(1)cpu測(cè)試

sysbench采用尋找最大素?cái)?shù)的方式來測(cè)試:命令如下

root@ubuntu:~#sysbench --test=cpu --cpu-max-prime=1500 run

從total time: 一行可以看出在求得1500以內(nèi)的最大素?cái)?shù)時(shí)使用了3.2214s

(2)fileio測(cè)試

使用fileio測(cè)試,首先得生成文件,然后對(duì)文件或讀或?qū)懀瑴y(cè)試fileio性能

生成文件:sysbench --test=fileio prepare ,使用fileio命令時(shí),會(huì)有很多參數(shù),可以使用--file-block-size指定單個(gè)文件大小,可以使用--file-total-size指定整個(gè)文件的大小,但是這里使用默認(rèn)參數(shù),單個(gè)文件大小為16M,整個(gè)文件大小為2G。如下所示:

這里總共生成了128個(gè)文件。讀寫文件sysbench --test=fileio --file-test-mode=rndrw run,如下所示:

在這份報(bào)告中,有兩個(gè)參數(shù)很值得我們關(guān)注,即每秒的請(qǐng)求數(shù)和總體的吞吐量,比如上面的就是785.16 Requests/sec 和12.268Mb/sec,這兩個(gè)參數(shù)對(duì)于評(píng)估磁盤的性能很有幫助。在完成測(cè)試后,需要將測(cè)試數(shù)據(jù)刪除: sysbench --test=fileio cleanup

(3)oltp 測(cè)試

首先生成數(shù)據(jù):sysbench --test=oltp --oltp-table-size=2000000 --oltp-table-name=tt --mysql-db=test --mysql-user=root --msyql-password=123 prepare ,這里測(cè)試用戶名:root密碼:123

生成數(shù)據(jù)后,進(jìn)行測(cè)試,使用8個(gè)線程進(jìn)行測(cè)試,如下所示:

以上數(shù)據(jù)對(duì)于分析多線程事務(wù)處理很有幫助,比如事務(wù)總統(tǒng)計(jì)數(shù),每秒事務(wù)的處理量等等,

sysbench對(duì)于其他的測(cè)試類似。。。

二、對(duì)于MySQL的性能分析,在服務(wù)器內(nèi)部有很多很好的命令來供我們使用,比如show status/show processlist/show innodb status

使用show status 中,“Select%”一般指不同類型的連接執(zhí)行計(jì)劃,“Handler%”一般指存儲(chǔ)引擎的相關(guān)信息,“Sort%”一般指排序的相關(guān)信息,“Created%”一般指新建臨時(shí)表的相關(guān)信息。一般也可以使用mysqlreport對(duì)信息進(jìn)行統(tǒng)計(jì)打印。

而show processlist 也打印出了相關(guān)參數(shù),此時(shí)可以使用Innotop代替進(jìn)行方便分析,或者使用mytop來分析。如果是在回話中使用,則需要添加session 參數(shù),即show session status; 使用show processlist 可以定位到mysql連接和進(jìn)程故障,這一功能一般需要和prep netstat PSof ps等聯(lián)合使用。使用tcpdump工具可以抓包分析流量。innotop 和tcpdump的強(qiáng)大功能以后再分析。

    相關(guān)評(píng)論

    閱讀本文后您有什么感想? 已有人給出評(píng)價(jià)!

    • 8 喜歡喜歡
    • 3 頂
    • 1 難過難過
    • 5 囧
    • 3 圍觀圍觀
    • 2 無聊無聊

    熱門評(píng)論

    最新評(píng)論

    發(fā)表評(píng)論 查看所有評(píng)論(0)

    昵稱:
    表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
    字?jǐn)?shù): 0/500 (您的評(píng)論需要經(jīng)過審核才能顯示)