在程序目录下,双击批处理文件HammerDB,弹出HammerDB的窗口。
图-1 HammerDB
命令如下:
[root@localhost ~]# mysql -uroot -p
Enter password:
mysql> create database tpcc;
Query OK, 1 row affected (0.02 sec)
mysql> grant all on tpcc.* to 'tpcc'@'%' identified by 'tpcc';
Query OK, 0 rows affected (0.06 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.02 sec)
双击左侧MySQL。
图-2 选择MySQL
在弹出的窗口中,选择MySQL和TPC-C,如下图。
图-3 选择MySQL和TPC-C
切换基准测试数据库类型之后,依次展开[TPC-C/Schema Build],并双击Options。
图-4 Options
在弹出的窗口中,配置好相关的参数,如下图。
图-5 配置参数
|
双击如下图所示的“build”,开始创建基准测试数据库。
图-6 创建基准测试数据库
然后可以看到如下输出信息。
下面1,2,3,4,5,6…这个输出行的Status列不能出现红叉,如果有则表示发生了报错,当worker完成后,监视线程会创建索引、存储过程并收集统计信息。虚拟用户1将显示信息“TPCC SCHEMA COMPLETE”字样,其他所有虚拟用户将显示已成功完成其操作的字样,如果没有看到,则说发生了错误。可以在最下方的文本输出框查看报错信息。 |
图-7 输出信息
造数完成之后,可以看到“TPCC SCHEMA COMPLETE”字样,如下图。
图-8 TPCC SCHEMA COMPLETE
创建1000个wavehouse预计要3-4小时才能完成。
前面已经按照tpc-c模型(oltp模型)创建好了测试库tpcc,现在基于tpcc库进行oltp测试。
造数完成之后,单击<Destroy Virtual Users>按钮停止造数的进程。
图-9 Destroy Virtual Users
双击左侧列表中的“Driver Script”。
图-10 Driver Script
选择的是定时长的驱动程序脚本,预热时长2分钟,测试时长5min,如下图配置。
图-11 时长配置
双击左侧菜单“Virtual User”下的“Load”,载入标准测试驱动程序脚本。
图-12 Load
创建虚拟用户。
虚拟用户有一个主用户,用于收集其他虚拟用户的统计值和返回状态,主用户包含在你指定的用户数量之内,因此,如果你希望有16个用户(16个并发连接数),那么,你需要创建17个用户,如下图,双击“Virtual User”下的“Options”,弹出如下窗口。 |
图-13 创建虚拟用户
根据测试情况看,当用户数量等于CPU核数+1时,性能数据最好,例如虚拟机CPU是16核,用户数量可以设置为17。
双击“Virtual User”下的“Create”按钮,创建虚拟用户(准备要并发连接线程,注意此时数据库中并未真正创建连接)。
图-14 Create
双击左侧“Virtual User”下的“Run”,开始执行基准测试。此时,需要查看tpm的值,可以单击如下图所示的按钮。
图-15 Run
在如下图所示的窗口中,等待几十秒即可看到数值,之后就可以看到曲线图,通过曲线图可以更直观地发现性能抖动问题。
图-16 性能曲线图
等待测试结束后,在virtual user output界面可以查看到本次的测试结果。
图-17 测试结果