sysbench的安裝和做效能測試

2021-09-09 01:13:23 字數 2195 閱讀 6493

sysbench是乙個模組化的、跨平台、多執行緒基準測試工具,主要用於評估測試各種不同系統引數下的資料庫負載情況。

關於這個專案的詳細介紹請看:

它主要包括以下幾種方式的測試:

1、cpu效能

2、磁碟io效能

3、排程程式效能

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

5、posix執行緒效能

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

目前sysbench主要支援 mysql,pgsql,oracle 這3種資料庫。

接下來,按照以下步驟安裝:

tar zxf sysbench-0.4.8.tar.gz cd sysbench-0.4.8 ./configure && make && make install strip /usr/local/bin/sysbench

以上方法適用於 mysql 安裝在標準預設目錄下的情況,如果 mysql 並不是安裝在標準目錄下的話,那麼就需要自己指定 mysql 的路徑了。

比如我的 mysql 喜歡自己安裝在 /usr/local/mysql 下,則按照以下方法編譯:

/configure --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib && make && make install

當然了,用上面的引數編譯的話,就要確保你的 mysql lib目錄下有對應的 so 檔案,

另外,如果想要讓 sysbench 支援 pgsql/oracle 的話,

就需要在編譯的時候加上引數 --with-pgsql 或者 --with-oracle 這2個引數預設是關閉的,只有 mysql 是預設支援的。

二、開始測試 編譯成功之後,就要開始測試各種效能了,測試的方法官網**上也提到一些,

但涉及到 oltp 測試的部分卻不夠準確。在這裡我大致提一下:

1、cpu效能測試

sysbench --test=cpu --cpu-max-prime=20000 run cpu測試主要是進行素數的加法運算,在上面的例子中,指定了最大的素數為 20000,

自己可以根據機器cpu的效能來適當調整數值。

2、執行緒測試

sysbench --test=threads --num-threads=64 --thread-yields=100 --thread-locks=2 run 3、磁碟io效能測試

sysbench --test=fileio --num-threads=16 --file-total-size=3g --file-test-mode=rndrw prepare sysbench --test=fileio --num-threads=16 --file-total-size=3g --file-test-mode=rndrw run sysbench --test=fileio --num-threads=16 --file-total-size=3g --file-test-mode=rndrw cleanup

上述引數指定了最大建立16個執行緒,建立的檔案總大小為3g,檔案讀寫模式為隨機讀。

4、記憶體測試

sysbench --test=memory --memory-block-size=8k --memory-total-size=4g run

上述引數指定了本次測試整個過程是在記憶體中傳輸 4g 的資料量,每個 block 大小為 8k。

5、oltp測試

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

上述引數指定了本次測試的表儲存引擎型別為 myisam,

這裡需要注意的是,官方**上的引數有一處有誤,即 --mysql-table-engine,官方**上寫的是 --mysql-table-type,這個應該是沒有及時更新導致的。

另外,指定了表最大記錄數為 1000000,其他引數就很好理解了,主要是指定登入方式。

測試 oltp 時,

可以自己先建立資料庫 sbtest,或者自己用引數 --mysql-db 來指定其他資料庫。

--mysql-table-engine 還可以指定為 innodb 等 mysql 支援的表儲存引擎型別。

sysbench的安裝和做效能測試

ysbench是乙個模組化的 跨平台 多執行緒基準測試工具,主要用於評估測試各種不同系統引數下的資料庫負載情況。關於這個專案的詳細介紹請看 它主要包括以下幾種方式的測試 1 cpu效能 2 磁碟io效能 3 排程程式效能 4 記憶體分配及傳輸速度 5 posix執行緒效能 6 資料庫效能 oltp基...

sysbench的安裝和做效能測試

sysbench是乙個模組化的 跨平台 多執行緒基準測試工具,主要用於評估測試各種不同系統引數下的資料庫負載情況。關於這個專案的詳細介紹請看 它主要包括以下幾種方式的測試 1 cpu效能 2 磁碟io效能 3 排程程式效能 4 記憶體分配及傳輸速度 5 posix執行緒效能 6 資料庫效能 oltp...

sysbench的安裝和做效能測試

sysbench是乙個模組化的 跨平台 多執行緒基準測試工具,主要用於評估測試各種不同系統引數下的資料庫負載情況。關於這個專案的詳細介紹請看 它主要包括以下幾種方式的測試 1 cpu效能 2 磁碟io效能 3 排程程式效能 4 記憶體分配及傳輸速度 5 posix執行緒效能 6 資料庫效能 oltp...