MySQL基準測試 sysbench

2021-07-09 17:35:48 字數 1976 閱讀 5080

重點來說mysql的基準測試如何進行,也有很多種工具來供我們選擇,比如mysqlslap、sysbench、super smack等,其中mysqlslap的使用mysql官網給出了介紹,super smack是伺服器壓力測試強有力的工具,那麼sysbench便是我們進行mysql基準測試的很漂亮的工具了。

sysbench是一款開源的多執行緒效能測試工具,可以執行cpu/記憶體/執行緒/io/資料庫等方面的效能測試。資料庫目前支援mysql/oracle/postgresql;

在本次試驗中,sysbench版本為:0.4.12 mysql版本為:5.1.61 ubuntu版本為:10.10

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

sysbench [general-options]... --test=[test-options] ... command

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

(1)cpu測試

sysbench採用尋找最大素數的方式來測試:命令如下

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

從total time: 一行可以看出在求得1500以內的最大素數時使用了3.2214s

(2)fileio測試

使用fileio測試,首先得生成檔案,然後對檔案或讀或寫,測試fileio效能

生成檔案:sysbench --test=fileio prepare ,使用fileio命令時,會有很多引數,可以使用--file-block-size指定單個檔案大小,可以使用--file-total-size指定整個檔案的大小,但是這裡使用預設引數,單個檔案大小為16m,整個檔案大小為2g。如下所示:

這裡總共生成了128個檔案。讀寫檔案sysbench --test=fileio --file-test-mode=rndrw run,如下所示:

在這份報告中,有兩個引數很值得我們關注,即每秒的請求數和總體的吞吐量,比如上面的就是785.16 requests/sec 和12.268mb/sec,這兩個引數對於評估磁碟的效能很有幫助。在完成測試後,需要將測試資料刪除: sysbench --test=fileio cleanup

(3)oltp 測試

首先生成資料:sysbench --test=oltp --oltp-table-size=2000000 --oltp-table-name=tt --mysql-db=test --mysql-user=root --msyql-password=123 prepare ,這裡測試使用者名稱:root密碼:123

生成資料後,進行測試,使用8個執行緒進行測試,如下所示:

以上資料對於分析多執行緒事務處理很有幫助,比如事務**計數,每秒事務的處理量等等,

sysbench對於其他的測試類似。。。

二、對於mysql的效能分析,在伺服器內部有很多很好的命令來供我們使用,比如show status/show processlist/show innodb status

使用show status 中,「select%」一般指不同型別的連線執行計畫,「handler%」一般指儲存引擎的相關資訊,「sort%」一般指排序的相關資訊,「created%」一般指新建臨時表的相關資訊。一般也可以使用mysqlreport對資訊進行統計列印。而show processlist 也列印出了相關引數,此時可以使用innotop代替進行方便分析,或者使用mytop來分析。如果是在回話中使用,則需要新增session 引數,即show session status; 使用show processlist 可以定位到mysql連線和程序故障,這一功能一般需要和prep netstat psof ps等聯合使用。使用tcpdump工具可以抓包分析流量。innotop 和tcpdump的強大功能以後再分析。

摘自部落格:

mysql基準測試例項 mysql基準測試

toc 單位時間內所處理的事務數 tps 單位時間內所處理的查詢數 qps 響應時間 平均響應時間,最小響應時間,最大響應時間,各時間所佔百分比 併發量 同時處理的查詢請求的數量 併發量不等於連線數 正在工作的併發的操作或同時工作的數量 工具 mysqlslap mysql自帶的 特點 可以模擬伺服...

mysql 基準測試指令碼 MySQL基準測試

常見指標 tps transaction per second qps query per second 響應時間 併發量步驟 計畫和設計基準測試 準備基準測試及資料收集指令碼 容易忽略的問題 使用生產環境資料時只使用了部分資料 在多使用者場景中,只做單使用者的測試 在單伺服器上測試分布式應用 反覆...

mysql 基準測試報告 Mysql基準測試

一 基準測試 基準測試的作用 了解當前系統的效能,建立mysql伺服器效能基準線 為之後的效能優化提供乙個超始線 模擬比當前系統更高的負載,找出系統的擴充套件瓶頸,為系統擴充套件與優化提供參考條件 測試不同的硬體 軟體和作業系統配置 證明新的硬體裝置是否配置正確和是否是最優配置 基準測試可以分為整合...