MySQL 5.5.4 的工作负载测试
MySQL 5.5.4 的工作负载测试
MySQL-5.5.4 ® 在性能上有着非常显著的提升,接下来我们对其工作负载进行类似 TPCC 的测试。
测试环境:
MySQL-5.5.4
InnoDB-1.1
tpcc-mysql benchmark with 200W ( about 18GB worth of data),
InnoDB 日志文件大小 3.8GB
缓冲池 20GB to 6GB.
存储 FusionIO 320GB MLC card with XFS-nobarrier. .
首先第一个测试结果:
上图中可看到 adaptive_flushing 参数没有真正起效,当 InnoDB 开始将数据写入磁盘时,都会有一个对应的向下脉尖,希望 MySQL 5.5 GA 版本能解决这个问题。
另外两个 MySQL 衍生版相比较:Percona Server 和 XtraDB
这个图里可看二者对 adaptive_checkpoint 算法都处理得相当好,很稳定。
而 MySQL 和 Percona Server 的比较如下:
下面是本测试过程中的 MySQL 配置
[mysqld]
basedir=/usr/local/mysql
user=root
socket=/var/run/mysqld/mysqld.sock
server_id=1
local_infile=1
tmpdir=/mnt/fio
datadir=/mnt/fio320/
skip-grant-table
innodb_buffer_pool_size=24G
innodb_data_file_path=ibdata1:10M:autoextend
innodb_file_per_table=1
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=8M
innodb_log_files_in_group=2
innodb_log_file_size=1900M
innodb_thread_concurrency=16
innodb_flush_method = O_DIRECT
innodb_write_io_threads=8
innodb_read_io_threads=8
innodb_io_capacity=500
innodb_purge_threads=1
innodb_max_dirty_pages_pct=90
max_connections=3000
query_cache_size=0
skip-name-resolve
table_cache=10000