tar zxvf tpcc-mysql.tar.gz
xuebb@xuebinbin:~#cd tpcc-mysql
xuebb@xuebinbin:~/tpcc-mysql# cd src
xuebb@xuebinbin:~/tpcc-mysql/src# make all (清理make clean)
1、 找不到mysql的头文件。 解决:export C_INCLUDE_PATH=$MYSQL_HOME/include 2、 找不到mysql_config程序 解决:export PATH=$MYSQL_HOME/bin:$PATH 3、 运行时找不到mysql库 解决:export LD_LIBRARY_PATH=$MYSQL_HOME/lib
xuebb@xuebinbin:~$ mysql -uroot
mysql> create database tpcc;
mysql> use tpcc;
mysql> source create_table.sql 建立表
mysql> show tables;
+----------------+
| Tables_in_tpcc |
+----------------+
| customer |
| district |
| history |
| item |
| new_orders |
| order_line |
| orders |
| stock |
| warehouse |
+----------------+
mysql> source add_fkey_idx.sql
加载数据:
1 单进程加载:./tpcc_load |主机数据库用户密码warehouse| or ./tpcc_load --help
xuebb@xuebinbin:~/tpcc-mysql#
./tpcc_load 127.0.0.1 tpcc xue_binbin "password" 300
or
xuebb@xuebinbin:~/tpcc-mysql#
./tpcc_load localhost tpcc xue_binbin "123" 300
localhost有可能会报以下错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock';
原因在于tpcc默认会解析访问配置文件中的sock.解决方法
GRANT ALL PRIVILEGES ON *.* TO 'xue_binbin'@'127.0.0.1' IDENTIFIED BY '123';
测试数据:
./tpcc_start -h localhost -d tpcc -u xue_binbin -p "123" -w 300 -c 32 -r 300 -l 7200 >> mysql_tpcc
参数说明: -h:测试主机 -d:测试的数据库 -u:测试的用户 -p:测试用户的密码 -w:测试的warehouse数 -c:测试的连接线程数 -r:预热时间 -l:测试时间
如果报 Segmentation fault 错误,其一表示找不到
export LD_LIBRARY_PATH
解决方式:
export LD_LIBRARY_PATH=$MYSQL_HOME/lib
测试结果分析
cd scripts
./analyse.sh /tmp/ mysql_tpcc > mysql_tpcc.res
如果报没有权限,则修改/analyse.sh
vimanalyse.sh
增加#!/bin/sh即可