\fBMYSQL\-STRESS\-TEST

NAME

SYNOPSIS

DESCRIPTION

The
mysql-stress-test.pl
Perl script performs stress-testing of the MySQL server. (MySQL 5.0 and up only)

mysql-stress-test.pl
requires a version of Perl that has been built with threads support.

Invoke
mysql-stress-test.pl
like this:

shell> mysql-stress-test.pl [options]

mysql-stress-test.pl
supports the following options:

*

--help

Display a help message and exit.

*

--abort-on-error

Unknown.

*

--check-tests-file

Periodically check the file that lists the tests to be run. If it has been modified, reread the file. This can be useful if you update the list of tests to be run during a stress test.

*

--cleanup

Force cleanup of the working directory.

*

--log-error-details

Log error details in the global error log file.

*

--loop-count=N

In sequential test mode, the number of loops to execute before exiting.

*

--mysqltest=path

The pathname to the
mysqltest
program.

*

--server-database=db_name

The database to use for the tests.

*

--server-host=host_name

The hostname of the local host to use for making a TCP/IP connection to the local server. By default, the connection is made to
localhost
using a Unix socket file.

*

--server-logs-dir=path

This option is required.
path
is the directory where all client session logs will be stored. Usually this is the shared directory that is associated with the server used for testing.

*

--server-password=password

The password to use when connecting to the server.

*

--server-port=port_num

The TCP/IP port number to use for connecting to the server. The default is 3306.

*

--server-socket=file_name

For connections to
localhost, the Unix socket file to use, or, on Windows, the name of the named pipe to use. The default if
/tmp/mysql.sock.

*

--server-user=user_name

The MySQL username to use when connecting to the server. The default is
root.

*

--sleep-time=N

The delay in seconds between test executions.

*

--stress-basedir=path

This option is required.
path
is the working directory for the test run. It is used as the temporary location for result tracking during testing.

*

--stress-datadir=path

The directory of data files to be used during testing. The default location is the
data
directory under the location given by the
--stress-suite-basedir
option.

*

--stress-init-file[=path]

file_name
is the location of the file that contains the list of tests. If missing, the default file is
stress_init.txt
in the test suite directory.

*

--stress-mode=mode

This option indicates the test order in stress-test mode. The
mode
value is either
random
to select tests in random order or
seq
to run tests in each thread in the order specified in the test list file. The default mode is
random.

*

--stress-suite-basedir=path

This option is required.
path
is the directory that has the
t
and
r
subdirectories containing the test case and result files. This directory is also the default location of the
stress-test.txt
file that contains the list of tests. (A different location can be specified with the
--stress-tests-file
option.)

*

--stress-tests-file[=file_name]

Use this option to run the stress tests.
file_name
is the location of the file that contains the list of tests. If
file_name
is omitted, the default file is
stress-test.txt
in the stress suite directory. (See
--stress-suite-basedir.)

*

--suite=suite_name

Run the named test suite. The default name is
main
(the regular test suite located in the
mysql-test
directory).

*

--test-count=N

The number of tests to execute before exiting.

*

--test-duration=N

The duration of stress testing in seconds.

*

--test-suffix=str

Unknown.

*

--threads=N

The number of threads. The default is 1.

*

--verbose

Verbose mode. Print more information about what the program does.

COPYRIGHT

Copyright 2007 MySQL AB

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA or see http://www.gnu.org/licenses/.

Please email
<docs@mysql.com>
for more information or if you are interested in doing a translation.

SEE ALSO

For more information, please refer to the MySQL Reference Manual,
which may already be installed locally and which is also available
online at http://dev.mysql.com/doc/.