新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > sysbench的安裝和做性能測(cè)試

sysbench的安裝和做性能測(cè)試

作者: 時(shí)間:2007-07-21 來(lái)源:網(wǎng)絡(luò) 收藏

sysbench是一個(gè)模塊化的、跨平臺(tái)、多線(xiàn)程基準(zhǔn)測(cè)試工具,主要用于評(píng)估測(cè)試各種不同系統(tǒng)參數(shù)下的數(shù)據(jù)庫(kù)負(fù)載情況。
它主要包括以下幾種方式的測(cè)試:
1、cpu性能
2、磁盤(pán)io性能
3、調(diào)度程序性能
4、內(nèi)存分配及傳輸速度
5、POSIX線(xiàn)程性能
6、數(shù)據(jù)庫(kù)性能(OLTP基準(zhǔn)測(cè)試)
目前sysbench主要支持 ,,oracle 這3種數(shù)據(jù)庫(kù)。

一、安裝
首先,在 http://sourceforge.net/projects/sysbench 下載源碼包。
接下來(lái),按照以下步驟安裝:
tar zxf sysbench-0.4.8.tar.gzcd sysbench-0.4.8./configure make make installstrip /usr/local/bin/sysbench
以上方法適用于 安裝在標(biāo)準(zhǔn)默認(rèn)目錄下的情況,如果 并不是安裝在標(biāo)準(zhǔn)目錄下的話(huà),那么就需要自己指定 MySQL 的路徑了。比如我的 MySQL 喜歡自己安裝在 /usr/local/mysql 下,則按照以下方法編譯:
/configure --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib make make install
當(dāng)然了,用上面的參數(shù)編譯的話(huà),就要確保你的 MySQL lib目錄下有對(duì)應(yīng)的 so 文件,如果沒(méi)有,可以自己下載 devel 或者 share 包來(lái)安裝。
另外,如果想要讓 sysbench 支持 /oracle 的話(huà),就需要在編譯的時(shí)候加上參數(shù) --with- 或者 --with-oracle
這2個(gè)參數(shù)默認(rèn)是關(guān)閉的,只有 MySQL 是默認(rèn)支持的。

二、開(kāi)始測(cè)試
編譯成功之后,就要開(kāi)始測(cè)試各種性能了,測(cè)試的方法官網(wǎng)網(wǎng)站上也提到一些,但涉及到 OLTP 測(cè)試的部分卻不夠準(zhǔn)確。在這里我大致提一下:
1、cpu
sysbench --test=cpu --cpu-max-prime=20000 run
cpu測(cè)試主要是進(jìn)行素?cái)?shù)的加法運(yùn)算,在上面的例子中,指定了最大的素?cái)?shù)為 20000,自己可以根據(jù)機(jī)器cpu的性能來(lái)適當(dāng)調(diào)整數(shù)值。
2、線(xiàn)程測(cè)試
sysbench --test=threads --num-threads=64 --thread-yields=100 --thread-locks=2 run
3、磁盤(pán)IO
sysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw preparesysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw runsysbench --test=fileio --num-threads=16 --file-total-size=3G --file-test-mode=rndrw cleanup
上述參數(shù)指定了最大創(chuàng)建16個(gè)線(xiàn)程,創(chuàng)建的文件總大小為3G,文件讀寫(xiě)模式為隨機(jī)讀。
4、內(nèi)存測(cè)試
sysbench --test=memory --memory-block-size=8k --memory-total-size=4G run
上述參數(shù)指定了本次測(cè)試整個(gè)過(guò)程是在內(nèi)存中傳輸 4G 的數(shù)據(jù)量,每個(gè) block 大小為 8K。
5、OLTP測(cè)試
sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 --mysql-socket=/tmp/mysql.sock --mysql-user=test --mysql-host=localhost --mysql-password=test prepare
上述參數(shù)指定了本次測(cè)試的表存儲(chǔ)引擎類(lèi)型為 myisam,這里需要注意的是,官方網(wǎng)站上的參數(shù)有一處有誤,即 --mysql-table-engine,官方網(wǎng)站上寫(xiě)的是 --mysql-table-type,這個(gè)應(yīng)該是沒(méi)有及時(shí)更新導(dǎo)致的。另外,指定了表最大記錄數(shù)為 1000000,其他參數(shù)就很好理解了,主要是指定登錄方式。測(cè)試 OLTP 時(shí),可以自己先創(chuàng)建數(shù)據(jù)庫(kù) sbtest,或者自己用參數(shù) --mysql-db 來(lái)指定其他數(shù)據(jù)庫(kù)。--mysql-table-engine 還可以指定為 innodb 等 MySQL 支持的表存儲(chǔ)引擎類(lèi)型。

本文引用地址:http://www.butianyuan.cn/article/258109.htm


關(guān)鍵詞: MySQL pgsql Oracle 性能測(cè)試

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉