數(shù)據庫工具sysbench安裝教程和性能測試例子
sysbench是一個模塊化的、跨平臺、多線程基準測試工具,主要用于評估測試各種不同系統(tǒng)參數(shù)下的數(shù)據庫負載情況。關于這個項目的詳細介紹請看:http://sysbench.sourceforge.net。
它主要包括以下幾種方式的測試:
1、cpu性能
2、磁盤io性能
3、調度程序性能
4、內存分配及傳輸速度
5、POSIX線程性能
6、數(shù)據庫性能(OLTP基準測試)
目前sysbench主要支持 MySQL,pgsql,oracle 這3種數(shù)據庫。
一、安裝
首先,在 http://sourceforge.net/projects/sysbench 下載源碼包。
接下來,按照以下步驟安裝:
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
當然了,用上面的參數(shù)編譯的話,就要確保你的 MySQL lib目錄下有對應的 so 文件,如果沒有,可以自己下載 devel 或者 share 包來安裝。
另外,如果想要讓 sysbench 支持 pgsql/oracle 的話,就需要在編譯的時候加上參數(shù)
--with-pgsql
或者
--with-oracle
這2個參數(shù)默認是關閉的,只有 MySQL 是默認支持的。
二、開始測試
編譯成功之后,就要開始測試各種性能了,測試的方法官網網站上也提到一些,但涉及到 OLTP 測試的部分卻不夠準確。在這里我大致提一下:
1、cpu性能測試
cpu測試主要是進行素數(shù)的加法運算,在上面的例子中,指定了最大的素數(shù)為 20000,自己可以根據機器cpu的性能來適當調整數(shù)值。
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
上述參數(shù)指定了最大創(chuàng)建16個線程,創(chuàng)建的文件總大小為3G,文件讀寫模式為隨機讀。
4、內存測試
上述參數(shù)指定了本次測試整個過程是在內存中傳輸 4G 的數(shù)據量,每個 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
上述參數(shù)指定了本次測試的表存儲引擎類型為 myisam,這里需要注意的是,官方網站上的參數(shù)有一處有誤,即 --mysql-table-engine,官方網站上寫的是 --mysql-table-type,這個應該是沒有及時更新導致的。另外,指定了表最大記錄數(shù)為 1000000,其他參數(shù)就很好理解了,主要是指定登錄方式。測試 OLTP 時,可以自己先創(chuàng)建數(shù)據庫 sbtest,或者自己用參數(shù) --mysql-db 來指定其他數(shù)據庫。--mysql-table-engine 還可以指定為 innodb 等 MySQL 支持的表存儲引擎類型。
好了,主要的就是這些了,想要了解更多信息就訪問 sysbench 項目的主頁吧。
相關文章
mysql 本地數(shù)據庫如何從遠程數(shù)據庫導數(shù)據
mysql 本地數(shù)據庫如何從遠程數(shù)據庫導數(shù)據,本文以此問題進行詳細介紹,需要了解的朋友可以參考下2012-11-11Windows系統(tǒng)下mysql5.7.21安裝詳細教程
這篇文章主要為大家詳細介紹了Windows系統(tǒng)下mysql5.7.21安裝詳細教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-02-02Mysql聯(lián)合查詢UNION和UNION ALL的使用介紹
本文詳細介紹了Mysql的聯(lián)合查詢命令UNION和UNION ALL,總結了使用語法和注意事項,以及學習例子和項目例子,需要的朋友可以參考下2014-04-04weblogic服務建立數(shù)據源連接測試更新mysql驅動包的問題及解決方法
WebLogic是用于開發(fā)、集成、部署和管理大型分布式Web應用、網絡應用和數(shù)據庫應用的Java應用服務器,這篇文章主要介紹了weblogic服務建立數(shù)據源連接測試更新mysql驅動包,需要的朋友可以參考下2022-01-01