OS Manuals

/usr/bin/mysqltest

Percona Server for MySQL is a free, fully compatible, enhanced, and open source drop-in replacement for any MySQL database. It provides superior performance, scalability, and instrumentation.

From percona-server-9.4 9.4.0.1-r11 (enterprise-packages), captured 2026-11-08 by running mysqltest --help (exit 0). permalink

/usr/bin/mysqltest  Ver 9.4.0-1 for Linux on x86_64 (Source distribution)
Copyright (c) 2009-2025 Percona LLC and/or its affiliates
Copyright (c) 2000, 2025, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Runs a test against the mysql server and compares output with a results file.

Usage: /usr/bin/mysqltest [OPTIONS] [database] < test_file
  --server-public-key-path=name
                      File path to the server public RSA key in PEM format.
  --get-server-public-key
                      Get server public key
  --ssl-mode=name     SSL connection mode.
  --ssl-ca=name       CA file in PEM format.
  --ssl-capath=name   CA directory.
  --ssl-cert=name     X509 cert in PEM format.
  --ssl-cipher=name   SSL cipher to use.
  --ssl-key=name      X509 key in PEM format.
  --ssl-crl=name      Certificate revocation list.
  --ssl-crlpath=name  Certificate revocation list path.
  --tls-version=name  TLS version to use, permitted values are: TLSv1.2,
                      TLSv1.3
  --ssl-fips-mode=name
                      SSL FIPS mode (applies only for OpenSSL); permitted
                      values are: OFF, ON, STRICT
  --tls-ciphersuites=name
                      TLS v1.3 cipher to use.
  --ssl-session-data=name
                      Session data file to use to enable ssl session reuse
  --ssl-session-data-continue-on-failed-reuse
                      If set to ON, this option will allow connection to
                      succeed even if session data cannot be reused.
  --tls-sni-servername=name
                      The SNI server name to pass to server
  -b, --basedir=name  Basedir for tests.
  --character-sets-dir=name
                      Directory for character set files.
  --colored-diff      Colorize the diff outout.
  -C, --compress      Use the compressed server/client protocol.
  --connect-timeout=# Number of seconds before connection timeout.
  --cursor-protocol   Use cursors for prepared statements.
  -D, --database=name Database to use.
  -#, --debug[=#]     This is a non-debug version. Catch this and exit.
  --debug-check       This is a non-debug version. Catch this and exit.
  --debug-info        This is a non-debug version. Catch this and exit.
  --default-character-set=name
                      Set the default character set.
  --explain-protocol  Explain all SELECT/INSERT/REPLACE/UPDATE/DELETE
                      statements
  -?, --help          Display this help and exit.
  -h, --host=name     Connect to host.
  --hypergraph        Force all queries to be run under the hypergraph
                      optimizer. SET
                      @@optimizer_switch='hypergraph_optimizer=ON
  --hypergraph-off    Force all queries to be run under the old optimizer. SET
                      @@optimizer_switch='hypergraph_optimizer=OFF
  -i, --include=name  Include SQL before each test case.
  --json-explain-protocol
                      Explain all SELECT/INSERT/REPLACE/UPDATE/DELETE
                      statements with FORMAT=JSON
  --logdir=name       Directory for log files
  --mark-progress     Write line number and elapsed time to
                      <testname>.progress.
  --init-command=name SQL Command to execute when connecting to MySQL server.
                      Will automatically be re-executed when reconnecting.
  --max-connect-retries=#
                      Maximum number of attempts to connect to server.
  --max-connections=# Max number of open connections to server
  --no-skip           Force the test to run without skip.
  -n, --no-skip-exclude-list=name
                      Contains comma-separated list of to be excluded inc
                      files.
  --offload-count-file=name
                      Offload count report file
  --opt-trace-protocol
                      Trace DML statements with optimizer trace
  -p, --password[=name]
                      Password to use when connecting to server.
  --plugin-dir=name   Directory for client-side plugins.
  -P, --port=#        Port number to use for connection or 0 for default to, in
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
                      /etc/services, built-in default (3306).
  --protocol=name     The protocol of connection (tcp,socket,pipe,memory).
  --ps-protocol       Use prepared-statement protocol for communication.
  -s, --quiet         Suppress all normal output.
  -r, --record        Record output of test_file into result file.
  -R, --result-file=name
                      Read/store result from/in this file.
  --result-format-version=#
                      Version of the result file format to use
  --shared-memory-base-name=name
                      Base name of shared memory.
  -s, --silent        Suppress all normal output. Synonym for --quiet.
  -S, --socket=name   The socket file to use for connection.
  --sp-protocol       Use stored procedures for select.
  --tail-lines=#      Number of lines of the result to include in a failure
                      report.
  -x, --test-file=name
                      Read test from/in this file (default stdin).
  -m, --timer-file=name
                      File where the timing in microseconds is stored.
  -t, --tmpdir=name   Temporary directory where sockets are put.
  --trace-exec        Print output from exec to stdout.
  -u, --user=name     User for login.
  -v, --verbose       Write more.
  -V, --version       Output version information and exit.
  --view-protocol     Use views for select.
  -*, --async-client  Use async client.
  --compression-algorithms=name
                      Use compression algorithm in server/client protocol.
                      Valid values are any combination of
                      'zstd','zlib','uncompressed'.
  --zstd-compression-level=#
                      Use this compression level in the client/server protocol,
                      in case --compression-algorithms=zstd. Valid range is
                      between 1 and 22, inclusive. Default is 3.
  --test-ssl-fips-mode
                      Toggle SSL FIPS mode on or off, to see whether FIPS is
                      supported. Prints the result to stdout, and then exits.
                      Used by mtr to enable/disable FIPS tests.
  --no-defaults       Don't read default options from any options file.

Variables (--variable-name=value)
and boolean options {FALSE|TRUE}          Value (after reading options)
----------------------------------------- --------------------------------
server-public-key-path                    (No default value)
get-server-public-key                     FALSE
ssl-ca                                    (No default value)
ssl-capath                                (No default value)
ssl-cert                                  (No default value)
ssl-cipher                                (No default value)
ssl-key                                   (No default value)
ssl-crl                                   (No default value)
ssl-crlpath                               (No default value)
tls-version                               (No default value)
tls-ciphersuites                          (No default value)
ssl-session-data                          (No default value)
ssl-session-data-continue-on-failed-reuse FALSE
tls-sni-servername                        (No default value)
basedir                                   ./
character-sets-dir                        (No default value)
colored-diff                              FALSE
compress                                  FALSE
connect-timeout                           120
cursor-protocol                           FALSE
database                                  (No default value)
default-character-set                     utf8mb4
explain-protocol                          FALSE
host                                      (No default value)
hypergraph                                FALSE
hypergraph-off                            FALSE
include                                   (No default value)
json-explain-protocol                     FALSE
logdir
mark-progress                             FALSE
init-command                              (No default value)
max-connect-retries                       500
max-connections                           1024
no-skip                                   FALSE
no-skip-exclude-list                      (No default value)
offload-count-file                        (No default value)
opt-trace-protocol                        FALSE
plugin-dir                                (No default value)
port                                      0
ps-protocol                               FALSE
quiet                                     FALSE
result-file                               (No default value)
result-format-version                     1
shared-memory-base-name                   (No default value)
silent                                    FALSE
socket                                    (No default value)
sp-protocol                               FALSE
tail-lines                                0
trace-exec                                FALSE
user                                      (No default value)
verbose                                   FALSE
view-protocol                             FALSE
async-client                              FALSE
compression-algorithms                    (No default value)
zstd-compression-level                    3
test-ssl-fips-mode                        FALSE
Options (65)
OptionDescriptionSource
--server-public-key-path nameFile path to the server public RSA key in PEM format.help
--get-server-public-keyGet server public keyhelp
--ssl-mode nameSSL connection mode.help
--ssl-ca nameCA file in PEM format.help
--ssl-capath nameCA directory.help
--ssl-cert nameX509 cert in PEM format.help
--ssl-cipher nameSSL cipher to use.help
--ssl-key nameX509 key in PEM format.help
--ssl-crl nameCertificate revocation list.help
--ssl-crlpath nameCertificate revocation list path.help
--tls-version nameTLS version to use, permitted values are: TLSv1.2, TLSv1.3help
--ssl-fips-mode nameSSL FIPS mode (applies only for OpenSSL);help
--tls-ciphersuites nameTLS v1.3 cipher to use.help
--ssl-session-data nameSession data file to use to enable ssl session reusehelp
--ssl-session-data-continue-on-failed-reuseIf set to ON, this option will allow connection to succeed even if session data cannot be reused.help
--tls-sni-servername nameThe SNI server name to pass to serverhelp
-b, --basedir nameBasedir for tests.help
--character-sets-dir nameDirectory for character set files.help
--colored-diffColorize the diff outout.help
-C, --compressUse the compressed server/client protocol.help
--cursor-protocolUse cursors for prepared statements.help
-#, --debug #This is a non-debug version.help
--debug-checkThis is a non-debug version.help
--debug-infoThis is a non-debug version.help
--default-character-set nameSet the default character set.help
--explain-protocolExplain all SELECT/INSERT/REPLACE/UPDATE/DELETE statementshelp
-?, --helpDisplay this help and exit.help
-h, --host nameConnect to host.help
--hypergraphForce all queries to be run under the hypergraph optimizer.help
--hypergraph-offForce all queries to be run under the old optimizer.help
-i, --include nameInclude SQL before each test case.help
--json-explain-protocolExplain all SELECT/INSERT/REPLACE/UPDATE/DELETE statements with FORMAT=JSONhelp
--logdir nameDirectory for log fileshelp
--mark-progressWrite line number and elapsed time to <testname>.progress.help
--max-connect-retries #Maximum number of attempts to connect to server.help
--no-skipForce the test to run without skip.help
-n, --no-skip-exclude-list nameContains comma-separated list of to be excluded inc files.help
--offload-count-file nameOffload count report filehelp
--opt-trace-protocolTrace DML statements with optimizer tracehelp
-p, --password namePassword to use when connecting to server.help
--plugin-dir nameDirectory for client-side plugins.help
-P, --port #Port number to use for connection or 0 for default to, in order of preference, my.cnf, $MYSQL_TCP_PORT, /etc/services, built-in default (3306).help
--protocol nameThe protocol of connection (tcp,socket,pipe,memory).help
--ps-protocolUse prepared-statement protocol for communication.help
-s, --quietSuppress all normal output.help
-r, --recordRecord output of test_file into result file.help
-R, --result-file nameRead/store result from/in this file.help
--result-format-version #Version of the result file format to usehelp
--shared-memory-base-name nameBase name of shared memory.help
-S, --socket nameThe socket file to use for connection.help
--sp-protocolUse stored procedures for select.help
--tail-lines #Number of lines of the result to include in a failure report.help
-x, --test-file nameRead test from/in this file (default stdin).help
-m, --timer-file nameFile where the timing in microseconds is stored.help
-t, --tmpdir nameTemporary directory where sockets are put.help
--trace-execPrint output from exec to stdout.help
-u, --user nameUser for login.help
-v, --verboseWrite more.help
-V, --versionOutput version information and exit.help
--view-protocolUse views for select.help
--async-clientUse async client.help
--compression-algorithms nameUse compression algorithm in server/client protocol.help
--zstd-compression-level #Use this compression level in the client/server protocol, in case --compression-algorithms=zstd.help
--test-ssl-fips-modeToggle SSL FIPS mode on or off, to see whether FIPS is supported.help
--no-defaultsDon't read default options from any options file.help

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.