MySQL基準測試載入器MySQLSlap使用執行個體
MySQLSlap是MySQL內建的基準測試載入器,無需單獨安裝即可使用。下面記錄一下在伺服器上用 MySQLSlap做MySQL基本測試的步驟。
1. cd /usr/local/mysql/bin/
進入mysql安裝目錄的bin目錄下,我的mysql安裝在 /usr/local下。
2. mysqlslap --concurrency=1,50,100 --iterations=3 --number-int-cols=5
--number-char-cols=5 --auto-generate-sql
--auto-generate-sql-add-autoincrement --engine=myisam,innodb
--number-of-queries=10 --create-schema=dbtest -uroot -pphp
運行mysqlslap命令並帶上相應的參數和mysql使用者名稱與密碼。然後螢幕上會輸出當前測試的結果, 如所示:
因為在參數中指定了--engine=myisam,innodb,所以會單獨對這2個引擎做基準測試。對測試結果大概翻譯如下:
運行引擎InnoDB
運行所有查詢的平均秒數:0.936秒
運行所有查詢的最小秒數:0.865秒
運行所有查詢的最大秒數:1.017秒
正在啟動並執行查詢的串連數:100
每串連的平均查詢數:0
3. 加上--only-print參數,查看具體的SQl執行:
mysqlslap --concurrency=1,50,100 --iterations=3 --number-int-cols=5
--number-char-cols=5 --auto-generate-sql
--auto-generate-sql-add-autoincrement --engine=myisam,innodb
--number-of-queries=10 --create-schema=dbtest -uroot -pphp --only-print | more
輸出結果如下:
可以看到,其實就是建立了一個庫,然後自動產生了一些插入和查詢的SQL語句來執行,來產生測試結果,最後再把這個庫刪除掉。
MySQLSlap常用參數說明 :
1.--auto-generate-sql: 由系統自動產生SQL指令碼進行測試
2. --auto-generate-sql-add-autoincrement 在產生的表中增加自增ID
3. --atuo-generate-sql-load-type 指定測試中使用的查詢類型
4. --auto-generate-sql-write-number 指定初始化資料時產生的資料量
5. --concurrency :指定並發線程的數量
6. --engine :指定要測試表的儲存引擎,可以用逗號分割多個儲存引擎
7, --no-drop:指定不清理測試資料
8, --iterations :指定測試回合的次數
9. --number-of-queries:指定每一個線程執行的查詢數量
10. --debug-info 指定輸出額外的記憶體及CPU統計資訊
11.--number-int-cols:指定測試表中包含INT類型列的數量
12.--number-char-cols:指定測試表中包含的varchar類型的數量
13. --create-schema:指定了用於執行測試的資料庫的名字
14, --query 用於指定自訂的SQL的指令碼
15,--only-print 並不運行測試指令碼,而是把產生的指令碼列印出來
本文永久更新連結地址:https://www.bkjia.com/Linux/2018-03/151159.htm