( MySQL Benchmarks

Info Catalog ( Internal use ( Optimize Overview ( Custom Benchmarks
 7.1.4 The MySQL Benchmark Suite
 This section should contain a technical description of the MySQL
 benchmark suite (and `crash-me'), but that description has not yet been
 written. Currently, you can get a good idea of the benchmarks by
 looking at the code and results in the `sql-bench' directory in any
 MySQL source distribution.
 This benchmark suite is meant to tell any user what operations a given
 SQL implementation performs well or poorly.
 Note that this benchmark is single-threaded, so it measures the minimum
 time for the operations performed. We plan to add multi-threaded tests
 to the benchmark suite in the future.
 To use the benchmark suite, the following requirements must be
    * The benchmark suite is provided with MySQL source distributions.
      You can either download a released distribution from
      `', or use the current development
      source tree ( Installing source tree).
    * The benchmark scripts are written in Perl and use the Perl DBI
      module to access database servers, so DBI must be installed.  You
      will also need the server-specific DBD drivers for each of the
      servers you want to test.  For example, to test MySQL, PostgreSQL,
      and DB2, you must have the `DBD::mysql', `DBD::Pg', and `DBD::DB2'
      modules installed.   Perl support.
 After you obtain a MySQL source distribution, you will find the
 benchmark suite located in its `sql-bench' directory.  To run the
 benchmark tests, build MySQL, then change location into the `sql-bench'
 directory and execute the `run-all-tests' script:
      shell> cd sql-bench
      shell> perl run-all-tests --server=SERVER_NAME
 SERVER_NAME is one of the supported servers. To get a list of all
 options and supported servers, invoke this command:
      shell> perl run-all-tests --help
 The `crash-me' script also is located in the `sql-bench' directory.
 `crash-me' tries to determine what features a database supports and
 what its capabilities and limitations are by actually running queries.
 For example, it determines:
    * What column types are supported
    * How many indexes are supported
    * What functions are supported
    * How big a query can be
    * How big a `VARCHAR' column can be
 You can find the results from `crash-me' for many different database
 servers at `'.  For
 more information about benchmark results, visit
Info Catalog ( Internal use ( Optimize Overview ( Custom Benchmarks
automatically generated byinfo2html