У меня есть innodb на сервере Ubuntu 10.10, работающем на платформе ESXi. Я выделил 8 процессоров, 32 гигабайта оперативной памяти и файлы, хранящиеся в Raid 5 HP SAN на дисках SAS 10k об / мин. Я ожидаю БЫСТРЫХ запросов! Однако: select count ('x') занимает 45 секунд для 75 миллионов строк! Итак, покопался в тюнинге этого зверя:
1) Некоторые из моих настроек заставляют mysql бомбить с ошибками "Неизвестная переменная". Эти:
innodb_file_format = barracuda
innodb_read_io_threads = 6
innodb_write_io_threads = 6
innodb_io_capacity = 1000
2) Остальные мои настройки, которые не вызывают сбой mysql, но, вероятно, не оптимизированы.
skip_name_resolve
default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_buffer_pool_size = 24G
innodb_log_files_size = 1G
innodb_log_buffer_size = 8M
innodb_flush_method = O_DIRECT
innodb_flush_log_at_trx_comit = 1
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 32
query_cache_limit = 1M
query_cache_size = 0
Есть ли какие-либо дополнительные настройки, которые вы бы порекомендовали для этих настроек? Какие-либо дополнительные настройки, которые мне не хватает?
Спасибо за поддержку!
innodb_file_format = barracuda
innodb_read_io_threads = 6
innodb_write_io_threads = 6
innodb_io_capacity = 1000
Эти настройки относятся к MySQL 5.5. Если вы используете MySQL 5.5 для данных, которые были записаны в MySQL 5.0 / 5.1, вам необходимо запустить старую версию MySQL, выполнить mysqldump и снова загрузить данные в mysql. Формат barracuda - это еще один формат файла InnoDB. Вы должны перейти с предыдущей версии MySQL и InnoDB. Я что-то писал об этом некоторое время назад.
Чтобы дважды проверить формат файла, выполните «ПОКАЗАТЬ ПЕРЕМЕННЫЕ КАК 'innodb_file_format';» Вы должны увидеть Антилопу.
Как только вы решите эту проблему, подключите другие переменные к этому
innodb_read_io_threads = 64
innodb_write_io_threads = 64
innodb_io_capacity = 20000
В конце концов, у вас 8 процессоров.
Параметры настройки MyISAM
Параметры настройки InnoDB
Специальная настройка InnoDB
Прогнозирование конфигурации кэша InnoDB и MyISAM