tpcc压测MySQL数据库

tpcc压测MySQL数据库

tpcc压测MySQL数据库实例步骤
1.上传 tpcc-mysql.tar.gz包

2.安装依赖包
yum install gcc-c++ gcc -y

3.解压安装包
tar xf tpcc-mysql.tar.gz

4.进入指定目录编译
cd tpcc-mysql/src/
make

5.进入上一层目录查看是否生成tpcc_load和tpcc_start两个文件
tpcc压测MySQL数据库
6.在压测之前创建tcpp数据库
create database tpcc10;

7.查看安装手册README
[[email protected] tpcc-mysql]# cat README

  1. Build binaries

    • cd scr ; make ##进入src目录编译
      ( you should have mysql_config available in $PATH)
  2. Load data

    • create database ##创建数据库
      mysqladmin create tpcc1000
    • create tables
      mysql tpcc1000 < create_table.sql ##导入现有的建表文件来创建表
    • create indexes and FK ( this step can be done after loading data) ##可以在导入数据之后创建索引
      mysql tpcc1000 < add_fkey_idx.sql
    • populate data
      • simple step
        tpcc_load 127.0.0.1:33000 tpcc1000 root “” 1000 ##加载表数据
        |hostname:port| |dbname| |user| |password| |WAREHOUSES|
        ref. tpcc_load --help for all options
      • load data in parallel ##并行加载
        check load.sh script ##查看load.sh脚本
  3. start benchmark

    • ./tpcc_start -h127.0.0.1 -P33000 -dtpcc1000 -uroot -w1000 -c32 -r10 -l10800
      |hostname(主机名)| |port(端口号)| |dbname(数据库名)| |user(用户)| |WAREHOUSES(仓库数量)| |CONNECTIONS(模拟并行窗口数量)| |WARMUP TIME(预热时间)| |BENCHMARK TIME(压测持续时间)|
    • ref. tpcc_start --help for all options

8.根据README接下来进行导入现有的建表文件来创建表
mysql -uroot -p123 tpcc10 <create_table.sql
检查数据库是否生成相应的表tpcc压测MySQL数据库9.创建索引
mysql -uroot -p123 tpcc10 < add_fkey_idx.sql
检查索引是否创建成功
show create table customer; 查看是否有主键等索引

10.加载数据
需要在 tpcc-mysql目录下操作
./tpcc_load localhost:3306 tpcc1000 root 123 10tpcc压测MySQL数据库11.压测./tpcc_start -h127.0.0.1 -P3306 -dtpcc10 -uroot -p123 -w10 -r10 -l10000tpcc压测MySQL数据库拓展:
[[email protected] tpcc-mysql]# ./tpcc_start --help ##./tpcc_start的其他选项


*** ###easy### TPC-C Load Generator ***


./tpcc_start: invalid option – ‘-’
Usage: tpcc_start -h server_host -P port -d database_name -u mysql_user -p mysql_password -w warehouses -c connections -r warmup_time -l running_time -i report_interval -f report_file(指定到文件) -t trx_file(事务文件)

12.show processlist;可以看到很多进程对表操作tpcc压测MySQL数据库13.去zabbix监控端查看