Como eu posso reduzir o disco IO no MySQL 5.6.26?

1

Eu estava usando o MySQL versão 5.1.52 para meu aplicativo, mas recentemente atualizei para o 5.6.26, mas agora estou enfrentando IO muito alto no disco.

A seguir, a configuração do sistema:

  • SO: Linux 2.6.39.4
  • RAM: 2 GB
  • Disco: Compact Flash de 30 GB.

Meu O.S é a mesma versão do MySQL que foi alterada. Eu tinha tomado observação IO com o MySQL versões 5.1.52 e 5.6.26 usando o utilitário iotop, as mesmas consultas são executadas em ambas as versões, a leitura é o número de gravações no disco. A seguir estão as observações:

5.1.52 Versão do MySQL:

Number of Queries     All Innodb Tables          All MyISAM Tables
900                     12.45M                        192K
1800                    23.76M                        424K
2700                    36.02M                        680K
3600                    46.33M                        924K

5.6.26 Versão do MySQL:

Number of Queries     All Innodb Tables          All MyISAM Tables
900                      75.04M                       212K
1800                    158.03M                       472K
2700                    245.93M                       756K
3600                    346.66M                      1016K

Eu posso comprometer as propriedades do ACID, mas não com o IO.

Por que o IO é aumentado no MySQl 5.6.26?

Como posso reduzir o IO do disco?

É bom usar o mecanismo MyISAM em vez do mecanismo InnoDB com o MySQL 5.6.26?

my.cnf para o MySQL 5.6.26:

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
default-storage-engine=MyISAM
general_log=on
general_log_file=/dev/shm/mysql.logs
thread_cache_size=9
table_open_cache=2000
table_definition_cache=1400
sort_buffer_size=2097152
query_cache_size=1048576
max_allowed_packet=4194304
key_buffer_size=8388608
join_buffer_size=262144
back_log=80
query_cache_type=OFF
open_files_limit=5000
event_scheduler=OFF
innodb_thread_concurrency=0
innodb_sync_spin_loops=30
innodb_stats_on_metadata=OFF
innodb_max_dirty_pages_pct=90
innodb_file_per_table=ON
innodb_concurrency_tickets=5000
innodb_autoextend_increment=8
innodb_open_files=2000
innodb_log_file_size=67108864
innodb_log_buffer_size=67108864
innodb_additional_mem_pool_size=1048576
innodb_log_buffer_size=1048576
innodb_max_dirty_pages_pct=90
innodb_max_dirty_pages_pct_lwm=90
innodb_adaptive_flushing_lwm=70
innodb_adaptive_flushing=0
innodb_io_capacity=2000
innodb_io_capacity_max=6000
innodb_lru_scan_depth=2000
innodb_write_io_threads=1
innodb_read_io_threads=1
innodb_buffer_pool_instances=1
innodb_buffer_pool_size=20971520
innodb_flush_method=O_DIRECT
innodb_flush_log_at_trx_commit=2

[mysqld_safe]
pid-file=/var/run/mysqld/mysqld.pid

Obrigado antecipadamente

    
por purvesh pardeshi 13.01.2016 / 08:30

0 respostas