MySQL 性能:使用 MySQL 5.7 实现每秒 50 万查询

2018年6月9日 zhangdd 45 0 评论 转载文章

还有很多挑战摆在我们面前;-) 作为参考,我上述测试的硬件配置信息如下:

  • Server : 32cores-HT (bi-thread) Intel 2300Mhz, 128GB RAM
  • OS : Oracle Linux 6.2
  • FS : 启用”noatime,nodiratime,nobarrier”挂载的EXT4

my.conf:

max_connections=4000 key_buffer_size=200M low_priority_updates=1 table_open_cache = 8000 back_log=1500 query_cache_type=0 table_open_cache_instances=16

files

innodb_file_per_table innodb_log_file_size=1024M innodb_log_files_in_group = 3 innodb_open_files=4000

buffers

innodb_buffer_pool_size=32000M innodb_buffer_pool_instances=32 innodb_additional_mem_pool_size=20M innodb_log_buffer_size=64M join_buffer_size=32K sort_buffer_size=32K

innodb

innodb_checksums=0 innodb_doublewrite=0 innodb_support_xa=0 innodb_thread_concurrency=0 innodb_flush_log_at_trx_commit=2 innodb_max_dirty_pages_pct=50 innodb_use_native_aio=1 innodb_stats_persistent = 1 innodb_spin_wait_delay= 6 / 96

perf special

innodb_adaptive_flushing = 1 innodb_flush_neighbors = 0 innodb_read_io_threads = 4 innodb_write_io_threads = 4 innodb_io_capacity = 4000 innodb_purge_threads=1 innodb_adaptive_hash_index=0

monitoring

innodb_monitor_enable = ’%’ performance_schema=OFF

  如果你需要的话,Linux Sysbench的二进制版本在这里

  • Sysbench-0.4.13-lux86
  • Sysbench-0.4.8-lux86

  使用UNIX socket来运行Point-Selects测试的Sysbench命令如下(在parallel中启动8个进程):

LD_PRELOAD=/usr/lib64/libjemalloc.so /BMK/sysbench-0.4.8 —num-threads=$1 —test=oltp —oltp-table-size=10000000 \ —oltp-dist-type=uniform —oltp-table-name=sbtest_10M_$n \ —max-requests=0 —max-time=$2 —mysql-socket=/SSD_raid0/mysql.sock \ —mysql-user=dim —mysql-password=dim —mysql-db=sysbench \ —mysql-table-engine=INNODB —db-driver=mysql \ —oltp-point-selects=1 —oltp-simple-ranges=0 —oltp-sum-ranges=0 \ —oltp-order-ranges=0 —oltp-distinct-ranges=0 —oltp-skip-trx=on \ —oltp-read-only=on run > /tmp/test_$n.log &

  使用IP端口来运行Point-Selects测试的Sysbench命令如下(在parallel中启动8个进程):

LD_PRELOAD=/usr/lib64/libjemalloc.so /BMK/sysbench-0.4.13 —num-threads=$1 —test=oltp —oltp-table-size=10000000 \ —oltp-dist-type=uniform —oltp-table-name=sbtest_10M_$n \ —max-requests=0 —max-time=$2 —mysql-host=127.0.0.1 —mysql-port=5700 \ —mysql-user=dim —mysql-password=dim —mysql-db=sysbench \ —mysql-table-engine=INNODB —db-driver=mysql \ —oltp-point-selects=1 —oltp-simple-ranges=0 —oltp-sum-ranges=0 \ —oltp-order-ranges=0 —oltp-distinct-ranges=0 —oltp-skip-trx=on \ —oltp-read-only=on run > /tmp/test_$n.log &

本文出自张佃栋de博客,转载时请注明出处及相应链接。

本文永久链接: https://blog.zhangdd.com/blog/104/

最后编辑: 2018/06/09

©著作权归作者所有