Mysql5.1 - mysqlslap效能測試工具
對高併發的效能提高很多.想拿來測一把.
於是挑了一個效能測試工具: MYSQL 5.1 帶來的mysqlslap效能測試工具. [@more@]
1. 安裝
下載: http://dev.mysql.com/downloads/mysql/5.1.html
這是MYSQL 5.1版本自帶的工具. 所以你裝完5.1後就可以用了.
在安裝過程中,你可能會遇到關於libmysqlclient.so.16的錯誤.
見: http://steven1981.itpub.net/post/7967/493101
2. 使用
# 幫助
mysqlslap --help
常用的選項:
--concurrency 代表併發數量,多個可以用逗號隔開,當然你也可以用自己的分隔符隔開,這個時候要用到--delimiter開關。
--engines 代表要測試的引擎,可以有多個,用分隔符隔開。
--iterations 代表要執行這些測試多少次。
--auto-generate-sql 代表用系統自己生成的SQL指令碼來測試。
--auto-generate-sql-load-type 代表要測試的是讀還是寫還是兩者混合的(read,write,update,mixed)
--number-of-queries 代表總共要執行多少次查詢。每個客戶執行的查詢數量可以用查詢總數/併發數來計算。比如倒數第二個結果2=200/100。
--debug-info 代表要額外輸出CPU以及記憶體的相關資訊。
--number-int-cols 代表示例表中的INTEGER型別的屬性有幾個。
--number-char-cols 意思同上。
--create-schema 代表自己定義的模式(在MySQL中也就是庫)。
--query 代表自己的SQL指令碼。
--only-print 如果只想列印看看SQL語句是什麼,可以用這個選項。
3. 測試
#測試環境
PowerEdge 1950 / 單盤 /10G MEM
OS: RHEL 5.3
MySQL版本為5.1.40
innodb_buffer_pool_size=2G
innodb_additional_mem_pool_size = 100M
innodb_max_dirty_pages_pct = 10
key_buffer_size=320M
bulk_insert_buffer_size = 64M
sync_binlog=0
#簡單的測試結果:
mysqlslap --defaults-file=/etc/my.cnf --concurrency=50,100,200 --iterations=1 --auto-generate-sql-unique-query-number=1 --number-int-cols=4 --number-char-cols=35 --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-load-type=write --engine=innodb --number-of-queries=200000 --commit=2000 --debug-info -uroot -palisoftdb -h127.0.0.1 -S /tmp/mysql.sock
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 131.013 seconds
Minimum number of seconds to run all queries: 131.013 seconds
Maximum number of seconds to run all queries: 131.013 seconds
Number of clients running queries: 50
Average number of queries per client: 4000
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 131.258 seconds
Minimum number of seconds to run all queries: 131.258 seconds
Maximum number of seconds to run all queries: 131.258 seconds
Number of clients running queries: 100
Average number of queries per client: 2000
Benchmark
Running for engine innodb
Average number of seconds to run all queries: 128.142 seconds
Minimum number of seconds to run all queries: 128.142 seconds
Maximum number of seconds to run all queries: 128.142 seconds
Number of clients running queries: 200
Average number of queries per client: 1000
mysqlslap --defaults-file=/etc/my.cnf --concurrency=50,100,200 --iterations=1 --auto-generate-sql-unique-query-number=1 --number-int-cols=4 --number-char-cols=35 --auto-generate-sql --auto-generate-sql-add-autoincrement --auto-generate-sql-load-type=write --engine=myisam --number-of-queries=200000 --debug-info -uroot -palisoftdb -h127.0.0.1 -S /tmp/mysql.sock
Benchmark
Running for engine myisam
Average number of seconds to run all queries: 42.607 seconds
Minimum number of seconds to run all queries: 42.607 seconds
Maximum number of seconds to run all queries: 42.607 seconds
Number of clients running queries: 50
Average number of queries per client: 4000
Benchmark
Running for engine myisam
Average number of seconds to run all queries: 45.547 seconds
Minimum number of seconds to run all queries: 45.547 seconds
Maximum number of seconds to run all queries: 45.547 seconds
Number of clients running queries: 100
Average number of queries per client: 2000
Benchmark
Running for engine myisam
Average number of seconds to run all queries: 47.517 seconds
Minimum number of seconds to run all queries: 47.517 seconds
Maximum number of seconds to run all queries: 47.517 seconds
Number of clients running queries: 200
Average number of queries per client: 1000
對MYISAM, 如果只作插入操作, 相當於 40000條/秒
對INNODB, 如果只作插入操作, 相當於 15000條/秒
光從以上兩個測試結果來看,如果只作插入操作. MYISAM確實要比INNODB效能好很多.
但這樣的資料不具有代表性.還需進一步詳細測試.這裡只作一個演示.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/703656/viewspace-1028256/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- mysqlslap效能壓測MySql
- mysqlslap 效能壓測MySql
- mysqlslap測試MySql
- 效能測試工具 - Siege
- MySQL壓測工具mysqlslap的介紹與使用MySql
- 【PG效能測試】pgbench效能測試工具簡單使用
- ABAP Webdynpro效能測試工具Web
- 使用 fio 工具測試 EBS 效能
- java 效能測試框架工具-junitperfJava框架
- 負載,效能測試工具-Gatling負載
- 效能測試工具你知道多少?
- 效能測試:主流壓測工具介紹
- JMeter效能測試工具使用入門JMeter
- 自己上手寫效能測試工具(二)
- Webapi管理和效能測試工具WebBenchmarkWebAPI
- sitespeedio前端效能測試工具介紹前端
- 用mysqlslap壓測自定義sqlMySql
- PR效能測試工具升級到全鏈路效能測試與分析平臺
- 移動端效能測試必備工具 PerfDog 效能狗
- 網路效能測試工具iperf的使用
- 效能測試工具的 Coordinated Omission 問題
- CentOS 下效能測試工具 wrk 安裝CentOS
- 測試網路效能的小工具
- 【網路】效能指標與測試工具指標
- 效能測試監控工具--Jmeter + Grafana + InfluxDBJMeterGrafanaUX
- 效能測試——壓測工具locust——指令碼初步編寫指令碼
- Linux iperf 網路傳輸效能測試工具Linux
- 效能測試之JVM的故障分析工具VisualVMJVMLVM
- 移動效能測試---工具PerfDog簡單使用
- 效能測試工具Lmbench的使用和下載
- 阿里巴巴 Android 效能測試工具 mobileperf 開源 (天貓精靈 Android 效能測試 - 線下篇)阿里Android
- 效能測試
- Jmeter介面測試+效能測試JMeter
- 社群自研效能評測工具,歡迎試用!
- WeTest 明星工具-移動端效能測試 PerfDog 初探
- 騰訊效能測試工具——PerfDog使用初體驗
- c++效能測試工具:google benchmark入門(二)C++Go
- netperf網路效能測試工具的使用詳解
- 幾個常見的MySQL效能測試工具RQMySql