mysqlslap - Man Page

load emulation client (mysqlslap is now a symlink to mariadb-slap)

Synopsis

mysqlslap [options]

Description

mysqlslap is a diagnostic program designed to emulate client load for a MariaDB server and to report the timing of each stage​. It works as if multiple clients are accessing the server​.

Invoke mysqlslap like this:

shell> mysqlslap [options]

Some options such as --create or --query enable you to specify a string containing an SQL statement or a file containing statements​. If you specify a file, by default it must contain one statement per line​. (That is, the implicit statement delimiter is the newline character​.) Use the --delimiter option to specify a different delimiter, which enables you to specify statements that span multiple lines or place multiple statements on a single line​. You cannot include comments in a file; mysqlslap does not understand them​.

mysqlslap runs in three stages:

  1. Create schema, table, and optionally any stored programs or data you want to using for the test​. This stage uses a single client connection​.
  2. Run the load test​. This stage can use many client connections​.
  3. Clean up (disconnect, drop table if specified)​. This stage uses a single client connection​.

Examples:

Supply your own create and query SQL statements, with 50 clients querying and 200 selects for each:

mysqlslap --delimiter=";" \
  --create="CREATE TABLE a (b int);INSERT INTO a VALUES (23)" \
  --query="SELECT * FROM a" --concurrency=50 --iterations=200

Let mysqlslap build the query SQL statement with a table of two INT columns and three VARCHAR columns​. Use five clients querying 20 times each​. Do not create the table or insert the data (that is, use the previous test's schema and data):

mysqlslap --concurrency=5 --iterations=20 \
  --number-int-cols=2 --number-char-cols=3 \
  --auto-generate-sql

Tell the program to load the create, insert, and query SQL statements from the specified files, where the create​.sql file has multiple table creation statements delimited by ';' and multiple insert statements delimited by ';'​. The --query file will have multiple queries delimited by ';'​. Run all the load statements, then run all the queries in the query file with five clients (five times each):

mysqlslap --concurrency=5 \
  --iterations=5 --query=query​.sql --create=create​.sql \
  --delimiter=";"

mysqlslap supports the following options, which can be specified on the command line or in the [mysqlslap] and [client] option file groups​. mysqlslap also supports the options for processing option files​.

See Also

For more information, please refer to the MariaDB Documentation, available online at https://mariadb.com/docs/

Author

MariaDB Foundation (http://www.mariadb.org/).

Info

15 May 2020 MariaDB 10.11 MariaDB Database System