Sysbench with support of multi-tables workload

We just pushed to sysbench support for workload against multiple tables ( traditionally it used only single table).

It is available from launchpad source tree lp:sysbench .

This is set of LUA scripts for sysbench 0.5 ( it supports scripting), and it works following way:

– you should use --test=tests/db/oltp.lua to run OLTP test
i.e. prepare


oltp.lua should understand most options that available for regular sysbench –test=oltp

there are couple other scripts, like

to support different OLTP modes.

Most interesting: all scripts support --oltp-tables-count=N ( default 1), in this case N sbtest tables will be used.

Additional parameter --oltp-secondary is taken from Mark Callaghan’s sysbench tree , in this case
table sbtest will be created with KEY xid (ID) , instead of PRIMARY KEY (ID)

Now, as we have N tables, we may want to prepare them in parallel, to save some time for preparation
I implemented that in script parallel_prepare.lua

so instead of

you may use

( please note that oltp-tables-count should be multiplier of num-threads)

Share this post

Comments (4)

  • sztanpet Reply

    please note that lua is not an acronym, so no need to capitalize it

    April 29, 2011 at 12:00 am
  • vineet Reply

    Hi Vadim,

    May i know your views on benchmark tool HammerOra for MySQL (

    According to me this tool is very handy and gives tpc-c benchmark results.


    January 6, 2012 at 5:10 am
  • Vadim Tkachenko Reply


    I did not try it, so I have no opinion there.

    January 9, 2012 at 10:12 am
  • Yen-Wei Liu Reply


    I noticed in your benchmark tests, you use “oltp_tables_count” instead of “oltp-tables-count” as shown here. Which one is correct ? Underscored or dashed ?

    May 24, 2012 at 6:58 pm

Leave a Reply