Настройка MySQLd InnoDB

Пытаясь настроить mysqld соответствующим образом для моей среды приложений, полностью состоящей из InnoDB (mysql DB, конечно, по-прежнему MyISAM), я продолжаю видеть варианты этой формулы для определения общего использования памяти:

key_buffer_size + query_cache_size + tmp_table_size + innodb_buffer_pool_size + innodb_additional_mem_pool_size + innodb_log_buffer_size
+ max_connections * (read_buffer_size + read_rnd_buffer_size + sort_buffer_size + join_buffer_size + binlog_cache_size + thread_stack)

Эта сумма больше моей доступной физической памяти и может привести к подкачке. Я определенно наблюдаю падение производительности по сравнению с моим альтернативным сервером (у которого больше оперативной памяти).

Я пытаюсь и не могу найти, какие из этих переменных бесполезны для InnoDB (полезны только для MyISAM) и могут быть значительно сокращены, чтобы уменьшить общее выделение памяти.

Вопрос, какие переменные конфигурации я могу настроить, чтобы уменьшить общее выделение памяти MySQL?


person Umbrella    schedule 04.04.2012    source источник


Ответы (2)


После долгих проверок и еще большей суеты я обнаружил, что это не имеет значения. По-видимому, MySQLd редко выделяет буферы, а это означает, что если я не использую MyISAM, буферы, которые только приносят пользу MyISAM, не будут увеличиваться, чтобы занимать значительные части физической памяти, и рассчитанное «общее выделение памяти» фактически не будет выделено.

person Umbrella    schedule 01.05.2012

Вы можете попробовать мастер настройки Percona. Это должно быть хорошим началом. Ребята из Percona знают свой MySQL.

Внимание. Вам будет предложено зарегистрироваться, чтобы получить окончательные результаты.

https://tools.percona.com/wizard

Вам, вероятно, потребуется провести сравнительный анализ, чтобы настроиться на конкретный шаблон нагрузки помимо этого.

person Joshua Martell    schedule 04.04.2012
comment
Я прошел через мастера. Он не только не дал ответа на мой вопрос, но и позволил мне пройти весь путь, а ЗАТЕМ попросил меня войти/зарегистрироваться, прежде чем показывать результаты. - person Umbrella; 05.04.2012
comment
@Umbrella То же самое случилось со мной, очень раздражает - person robd; 01.05.2012