一、准备压测工具
详情请看官网文档
1.下载资源
# 下载
wget https://sourceforge.net/projects/benchmarksql/files/benchmarksql-5.0.zip
# 解压
unzip benchmarksql-5.0.zip
2.修改 java 代码
// vim benchmarksql-5.0/src/client/jTPCC.java
if (iDB.equals("firebird"))
dbType = DB_FIREBIRD;
else if (iDB.equals("oracle"))
dbType = DB_ORACLE;
else if (iDB.equals("postgres"))
dbType = DB_POSTGRES;
// 增加ob类型
else if (iDB.equals("oceanbase"))
dbType = DB_OCEANBASE;
else
{
log.error("unknown database type '" + iDB + "'");
return;
}
// vim benchmarksql-5.0/src/client/jTPCCConfig.java
public final static int
DB_UNKNOWN = 0,
DB_FIREBIRD = 1,
DB_ORACLE = 2,
DB_POSTGRES = 3,
// 增加 ob 类型
DB_OCEANBASE = 4;
// vim benchmarksql-5.0/src/client/jTPCCConnection.java
// 增加 AS L 别名
default:
stmtStockLevelSelectLow = dbConn.prepareStatement(
"SELECT count(*) AS low_stock FROM (" +
" SELECT s_w_id, s_i_id, s_quantity " +
" FROM bmsql_stock " +
" WHERE s_w_id = ? AND s_quantity < ? AND s_i_id IN (" +
" SELECT ol_i_id " +
" FROM bmsql_district " +
" JOIN bmsql_order_line ON ol_w_id = d_w_id " +
" AND ol_d_id = d_id " +
" AND ol_o_id >= d_next_o_id - 20 " +
" AND ol_o_id < d_next_o_id " +
" WHERE d_w_id = ? AND d_id = ? " +
" ) " +
" )AS L")

最低0.47元/天 解锁文章
1143

被折叠的 条评论
为什么被折叠?



