sysbench 簡單使用

2021-07-25 11:43:29 字數 2943 閱讀 6627

一、sysbench壓力測試工具簡介:

sysbench是乙個開源的、模組化的、跨平台的多執行緒效能測試工具,可以用來進行cpu、記憶體、磁碟i/o、執行緒、資料庫的效能測試。目前支援的資料庫有mysql、oracle和postgresql。以下操作都將以支援mysql資料庫為例進行

1.      sysbench工具安裝:

預設支援mysql,如果需要測試oracle/postgresql,則在configure時需要加上-with-oracle或者-with-pgsql引數.

編譯安裝

tar -zxvf sysbench-1.0.tar.gz

cd sysbench-1.0

./autogen.sh

關鍵的三步:configure && make && make install

首先是./configure命令,sysbench預設是支援mysql的benchmarking的,如果不加任何選項則要求保證mysql的安裝路徑都是預設的標準路徑,headfile位於/usr/include目錄下,libraries位於/usr/lib/目錄下。因為我的mysql是原始碼編譯安裝的,安裝路徑是放在/usr/local/mysql下,所以這裡要新增相應的選項命令:

# ./configure --prefix=/usr/local/sysbench --with-mysql=/usr/local/mysql \

--with-mysql-includes=/usr/local/mysql/include/mysql/ \

--with-mysql-libs=/usr/local/mysql/lib/mysql/

2.sysbench的測試主要包括以下幾個方面:

1、磁碟io效能

2、cpu效能

3、記憶體分配及傳輸速度

4、posix執行緒效能

5、排程程式效能

6、資料庫效能(oltp基準測試).

例子:2.1 對磁碟io效能的測試

2.2.1 建立fileio檔案

建立初始化fileio檔案:

sysbench --test=fileio --file-num=16 --file-total-size=2g prepare

2.2.2 開始fileio測試

sysbench --test=fileio --file-total-size=2g --file-test-mode=rndrd --max-time=180 --max-requests=100000000 --num-threads=16 --init-rng=on --file-num=16 --file-extra-flags=direct --file-fsync-freq=0 --file-block-size=16384 run

2.2.3 測試完成執行cleanup 試結束後,以確保測試所產生的檔案都已刪除:

sysbench --test=fileio --file-num=16 --file-total-size=2g cleanup

測試不同的方式的shell指令碼--file-test-mode=string 檔案測試模式,包含:seqwr(順序寫), seqrewr(順序讀寫), seqrd(順序讀), rndrd(隨機讀), rndwr(隨機寫), rndrw(隨機讀寫)

#!/bin/bash

for size in

dofor mode in

dofor blksize in

dosysbench --test=fileio --file-num=64 --file-total-size=$size prepare

for threads in

doecho "**********==testing $blksize in $threads threads"

echo paras $size $mode $threads $blksize > sysbench-size-$size-mode-$mode-threads-$threads-blksz-$blksize

for i in

dosysbench --test=fileio --file-total-size=$size --file-test-mode=$mode --max-time=180 --max-requests=100000 --num-threads=$threads --init-rng=on --file-num=64 --file-extra-flags=direct --file-fsync-freq=0 --file-block-size=$blksize run|tee -a sysbench-size-$size-mode-$mode-threads-$threads-blksz-$blksize 2>&1

done

done

sysbench --test=fileio --file-total-size=$size cleanup

done

done

done

2.2 測試cpu 測試計算素數的時間

sysbench  --test=cpu  --cpu-max-prime=20000 run

2.3 oltp的基準測試

2.3.1 生成測試的表

sysbench --test=oltp  --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --mysql-password='12345' prepare

2.3.2 測試

sysbenh --test=oltp --oltp-table-size=1000000 -mysql-db=test --mysql-user=root --mysql-password='12345' --max-time=60 --oltp-read-only=on --max-requests=0 --num-threads=8 run

8個併發執行緒唯讀模式,時長60s

注意,sysbench測試不一定代表真實環境的測試,這個工具只是乙個」基準測試「。

sysbench工具使用

automake libtool sysbench 1.0.zip yum install automake libtool mkdir usr local sysbench p cd usr local sysbench unzip sysbench 1.0.zip cd sysbench 1.0...

sysbench安裝和使用

sysbench是一款測試工具 主要包括以下幾種方式的測試 1 cpu效能 2 磁碟io效能 3 排程程式效能 4 記憶體分配及傳輸速度 5 posix執行緒效能 6 資料庫效能 oltp基準測試 現在sysbench主要支援 mysql,pgsql,oracle 這3種資料庫 git github...

sysbench安裝及使用

一 安裝 2 上傳到伺服器 剛部署的伺服器,可能沒有編譯環境 可安裝編譯環境 安裝編譯環境 yum groupinstall y development tools rz命令 如果伺服器沒有rz命令,可以安裝 yum install lrzsz y 上傳成功後,可以檢視 3 安裝.autogen.s...