Настройка mysqld
Когда Вы указываете опцию -O, отдельно (без дополнительных параметров) Вы получите список всех переменных и их текущих значений. Это может выглядеть примерно так:
$ mysqld -O
Возможные переменные в опции -O:
Имя | Значение по умолчанию |
back_log | Определите размер очереди для входящих tcp/ip подключений. Убедитесь, что установили его побольше, когда Вы ожидаете большое количество подключений в коротком периоде времени. Некоторые ОС могут иметь максимальное значение этой переменной 128 или 256. Подробности об этой очереди можно посмотреть на man-странице listen(2). |
keybuffer | Размер кэш-буфера, для хранения всех недавно использованных ключей. Большой буфер дает самую лучшую эффективность. С переключателем -Sl распределен только один буфер. |
max_allowed_packet | Буфер подключений сервера может быть изменен до этого значения, если пользователь дает длинную команду. Начальный буфер = 'net_buffer_length'. На каждое подключение выделяется один буфер. |
net_buffer_length | Начальный размер буфера подключений. На каждое подключение выделяется один буфер. |
max_connections | Максимальное число подключений, которые mysqld может иметь открытыми в одно и то же время. |
table_cache | Максимальное число таблиц сохраняемых открытыми на сервере. Таблицы хранятся открытыми, для ускорения запроса к часто используемым таблицам. Однако, каждая открытая таблица требует много памяти. |
recordbuffer | Размер кэш-буфера для хранения прочитанных записей. На каждое подключение выделяется один буфер. |
sortbuffer | Размер буфера, используемого при сортировке. На каждое подключение выделяется один буфер. |
max_sort_length | Максимальное время для сортировки? |
Полезные замечания
Если Вы имеете прикладную программу, которая требует большого количества потоков, это является хорошим способом уменьшить значения recordbuffer и sortbuffer примерно до 32K. Вы можете даже уменьшить recordbuffer до 8КБ без особых проблем. Кроме того можно рассматривать уменьшение значения переменной keybuffer до размера в 512КБ. Это сохранит большой объем памяти, и повысит эффективность работы.
Маленькие хитрости по улучшению производительности
После того, как Вы загрузили данные в вашу базу данных, Вы можете выполнить команду 'isamchk -a' над вашими таблицами. Программа isamchk соберет статистику по вашим таблицам, которую сможет использовать оптимизатор. Вообще, надо выполнить isamchk только однажды на таблице. При этом предполагается, что что данные в таблице во время isamchk выполнены в типичном представлении для вашей таблицы.