Как увеличить использование памяти в MySQL Server для улучшения скорости?

Необходимо ли использовать ping ICMP для тестирования сервера? Запросы HTTP поддерживаются большинством подсистем балансировки нагрузки и обычно являются лучшей идеей, поскольку Ваш веб-сервер может снизиться, в то время как Ваша сетевая плата все еще.

28
задан 20 September 2017 в 11:53
2 ответа

table_cache самая полезная конфигурационная директива должна измениться. Каждый раз, когда MySQL получает доступ к таблице, он загружает таблицу в кэш. Если у Вас есть высокое количество таблиц, это быстрее, чтобы кэшировать их.

Смотрите на свои серверные переменные путем выполнения:

show status;

и взгляните для переменной open_tables. Если это совпадает с Вашим table_cache значение, и opened_tables продолжает повышаться, затем необходимо увеличиться table_cache оцените в своем конфигурационном файле. Вы найдете баланс путем экспериментирования с этими переменными в течение пикового времени. Вы хотите настроить его так, чтобы в пиковое время, существует низкая сумма opened_tables даже после того, как сервер возрос в течение долгого времени.

key_buffer_size также хорошая переменная для экспериментирования с. Эта переменная влияет на размер индексного буфера, и делающий этот переменный больший индексный коэффициент оборачиваемости MySQL увеличений. Можно посмотреть на переменные с show variables; управляйте снова и сравните key_read_requests кому: key_reads. Идеально, Вы хотите, чтобы отношение между этими двумя переменными было максимально низким, и можно сделать это путем увеличения размера key_buffer_size. При установке этой переменной выше Вы будете иметь меньше записей и читаете непосредственно в и от диска, который был Вашим основным беспокойством.

20
ответ дан 28 November 2019 в 20:03

Необходимо изменить значения в my.cnf файл и MySQL перезапуска, хотя можно изменить многих из них, пока MySQL работает, также ('УСТАНАВЛИВАЕТ ГЛОБАЛЬНЫЙ VARIABLE=value').

Вы, вероятно, захотите посмотреть на увеличение key_buffer_size, sort_buffer, read_buffer и table_cache для начинающих и вероятно innodb_buffer_pool_size , если у Вас есть какие-либо таблицы InnoDB. Некоторые из этих значений можно увеличить длинный путь (даже два порядка величины) особенно учитывая аппаратные средства. Значения по умолчанию MySQL чрезвычайно консервативны и, казалось, были нацелены на общие рабочие столы смешанного использования приблизительно десять лет назад. О, и предупредите, что 32-разрядная версия испытает затруднения с помощью больше чем 2 ГБ RAM.

Посмотрите в MySQL Manual для получения дополнительной информации и руководстве.

5
ответ дан 28 November 2019 в 20:03

Теги

Похожие вопросы