首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 效能測試工具三大推薦:mysqlslap、sysbench、TPC-C 基準測試

     編輯:MySQL 資料庫相關知識

官方內建:mysqlslap

  • 隨 MySQL 安裝提供,無需額外安裝。
  • 模擬併發客戶端負載,自動產生測試資料與 Schema。
  • 指令範例:
mysqlslap --concurrency=50 --iterations=10 --number-int-cols=5 --number-char-cols=5 \
  --auto-generate-sql --engine=innodb -u root -p

業界標準:sysbench

  • 支援 MySQL、PostgreSQL、Oracle 等多種資料庫。
  • 提供 OLTP、唯讀、寫入、混合等多種測試模式。
  • Lua 腳本可自訂複雜業務邏輯。
  • 安裝:`yum install sysbench` / `apt-get install sysbench`
  • 指令範例:
sysbench /usr/share/sysbench/oltp_read_write.lua \
  --mysql-host=127.0.0.1 --mysql-port=3306 --mysql-user=root --mysql-password=xxx \
  --mysql-db=test --tables=10 --table-size=100000 --threads=64 --time=300 run

標準基準:TPC-C

  • 國際交易處理性能委員會標準基準測試,模擬完整訂單處理流程。
  • 結果具公信力,適合產品選型、硬體採購決策。
  • 實施複雜,通常由廠商或第三方實驗室執行。

補充工具

  • MySQL Benchmark Suite:舊版 Perl 腳本,僅供參考。
  • super-smack:老牌壓力測試工具,已停止維護。
  • go-tpc:Go 實作的 TPC-C/TPC-H,輕量易部署。

測試黃金法則

  1. 使用真實資料分佈與查詢模式,而非純隨機資料。
  2. 測試前 `FLUSH TABLES`、`RESET MASTER` 確保環境乾淨。
  3. 記錄硬體規格、MySQL 版本、參數設定、並發數、持續時間,確保可重現。
  4. 關注 QPS、TPS、延遲百分位 (P95/P99)、錯誤率 而非單一指標。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved