首先mysql/bin 目錄里應該有mysqlslap.exe,我的版本是 5.5.11,里面是有這玩意的

成都創新互聯公司是一家以重慶網站建設、網頁設計、品牌設計、軟件運維、seo優化排名、小程序App開發等移動開發為一體互聯網公司。已累計為成都垃圾桶等眾行業中小客戶提供優質的互聯網建站和軟件開發服務。
在執行之前需要在mysql里建一個mysqlslap的database
use mysqlslap
然后建表news,classify輸數據...
在命令行里輸入:
C:\Program Files\MySQL\MySQL Server 5.5\binmysqlslap -u root –no-defaults -p -c
reate-schema=example --query="SELECT n.* FROM news n,classify c WHERE n.type=c.id AND c.type='2'" --iterations=1000
其中-u為username,-p為使用密碼,query引號后的內容為執行的測試的sql,循環1000次
要求輸入密碼
Enter password: ****
結果:
Benchmark
Average number of seconds to run all queries: 0.007 seconds
Minimum number of seconds to run all queries: 0.000 seconds
Maximum number of seconds to run all queries: 1.016 seconds
Number of clients running queries: 1
Average number of queries per client: 1
http函數下的loadrunner編程。
globals.h
#ifndef _GLOBALS_H
#define _GLOBALS_H
#include "lrun.h"
#include "web_api.h"
#include "lrw_custom_body.h"
#include "modal_dialog_callbacks.h"
#define random(x) (rand()%x)
#include
#include
#include
#include
#include
#include
#include
#endif // _GLOBALS_H
vuser_init.c
MYSQL *db;
MYSQL_ROW record;
vuser_init()
{
char sql[128];
MYSQL_RES *results1;
lr_load_dll("libmysql.dll");
db = mysql_init(NULL);
mysql_real_connect(db, "192.168.8.32", "root", "123456", "sunboyu_test", 3311, "/tmp/mysql3311.sock", 1);
sprintf(sql, "show tables");
mysql_query(db, sql);
results1 = mysql_store_result(db);
while((record = mysql_fetch_row(results1)))
{
lr_log_message("table = %s", record[0]);
}
mysql_free_result(results1);
return 0;
}
vuser_end.c
vuser_end()
{
mysql_close(db);
mysql_server_end();
return 0;
}
Action.c
Action()
{
int r1 = 0;
char sql[128];
r1 = random(11); //10種用戶,8種正常訪問,兩種在挖墳
lr_log_message(" %d", r1);
if(r1==11)
{
my_mysql_insert();
}
else
{
my_mysql_query( r1 );
}
return 0;
}
int my_mysql_query( int randid )
{
int r2 = 0;
int j = 0;
int count = 0;
int page = 0;
char sql[128];
MYSQL_RES *results2;
if(randid2) //老數據,小部分 20%
{
r2 = random(700000);
sprintf(sql, "SELECT COUNT(*) AS count FROM posts_jx3 WHERE tid = %d;",r2);
lr_log_message("%s",sql);
mysql_query(db, sql);
results2 = mysql_store_result(db);
while((record = mysql_fetch_row(results2)))
{
lr_log_message("count = %d", record[0]);
}
mysql_free_result(results2);
page = count/10;
lr_log_message("page = %d", page);
for(j=0;j =page;j++)
{
sprintf(sql, "SELECT * FROM posts_jx3 WHERE tid = %d LIMIT %d,10;",r2,j);
mysql_query(db, sql);
lr_log_message("%s", sql);
if (j0) {
results2 = mysql_store_result(db);
while((record = mysql_fetch_row(results2)))
{
lr_log_message("pid = %d", record[0]);
}
mysql_free_result(results2);
}
}
}
else //新數據,大部分 80%
{
r2 = random(273505);
r2 = r2+700000;
sprintf(sql, "SELECT COUNT(*) AS count FROM posts_jx3 WHERE tid = %d;",r2);
兩種簡單的方法,一個是使用海量數據進行測試性能。一個是使用測試工具,比如mysqlslap等等等等。
1 使用--auto-generate-sql參數表示用mysqlslap工具自己生成的SQL腳本來測試并發壓力 mysqlslap --auto-generate-sql -uroot -p123456 2 并發測試,使用–concurrency來模擬并發連接,連接數可以多個,用逗號隔開 mysqlslap --auto-generate-sql ...
在Jmeter中建立一個JDBC
Request
測試計劃主要分兩步。
(1)設置JDBC連接池(在JDBC
Connection
Configuration)
(2)添加JDBC
Request
其他步驟就是設置參數化、斷言、監聽結果。
第一步:添加
JDBC
Connection
Configuration
需要設置jdbc線程池變量的名稱,這里設置為jdbcConfig,這個變量在JDBC
Request中要使用的;還有要設置Database
URL,格式為:jdbc:mysql://localhost:3306/chen?serverTimezone=UTCcharacterEncoding=utf-8,注意:?后面的serverTimezone=UTCcharacterEncoding=utf-8不能缺少,否則會報時區錯誤。
第二部:設置JDBC
Request
網站名稱:mysql壓力測試怎么用,如何測試壓力
網頁網址:http://www.yijiale78.com/article32/hegcsc.html
成都網站建設公司_創新互聯,為您提供營銷型網站建設、搜索引擎優化、服務器托管、網站營銷、網站改版、網站設計公司
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯