这个基准套件旨在告诉任何用户给定 SQL 实现的哪些操作执行得好或差。sql-bench
通过查看任何 MySQL 源代码分发目录中
的代码和结果,您可以很好地了解基准测试的工作原理。
要使用基准套件,必须满足以下要求:
基准套件随 MySQL 源代码分发一起提供。您可以从https://mysql.net.cn/downloads/下载已发布的发行版,或使用当前的开发源代码树。(参见 第 2.9.5 节,“使用开发源代码树安装 MySQL”。)
基准测试脚本是用 Perl 编写的,并使用 Perl DBI 模块访问数据库服务器,因此必须安装 DBI。对于要测试的每个服务器,您还需要特定于服务器的 DBD 驱动程序。例如,要测试 MySQL、PostgreSQL 和 DB2,您必须 安装
DBD::mysql
、DBD::Pg
和DBD::DB2
模块。请参见 第 2.13 节 “Perl 安装说明”。
获得 MySQL 源代码分发后,您可以在其sql-bench
目录中找到基准测试套件。要运行基准测试,构建 MySQL,然后将位置更改为sql-bench
目录并执行run-all-tests
脚本:
$> cd sql-bench
$> perl run-all-tests --server=server_name
server_name
应该是受支持的服务器之一的名称。要获取所有选项和支持的服务器的列表,请调用此命令:
$> perl run-all-tests --help
crash-me脚本也位于该
目录sql-bench
中。
crash-me试图通过实际运行查询来确定数据库系统支持哪些功能以及它的功能和限制是什么。例如,它确定:
支持哪些数据类型
支持多少索引
支持哪些功能
查询可以有多大
VARCHAR
一个柱子可以有 多大
有关基准测试结果的更多信息,请访问 http://www.mysql.com/why-mysql/benchmarks/。