powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / ускорить работу mysql сервера ?
8 сообщений из 33, страница 2 из 2
ускорить работу mysql сервера ?
    #38945427
loginovru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle, а вот я хотел например здесь услышать следующее, но так и не услышал, это что касается буферов:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Буферы

У всех буферов есть общая черта — если из-за установки большого размера буфера данные будут уходить в файл подкачки, то от буфера будет больше вреда, чем пользы. Поэтому всегда ориентируйтесь на доступный вам объем физической ОЗУ.
key_buffer_size — размер буфера, выделяемого под индексы и доступного всем потокам. Весьма важная настройка, влияющая на производительность. Значение по умолчанию 8 МБ, его однозначно стоит увеличить. Рекомендуется 15-30% от общего объема ОЗУ, однако нет смысла устанавливать больше, чем общий размер всех .MYI файлов. Наблюдайте за переменными состояния Key_reads и Key_read_requests, отношение Key_reads/Key_read_requests должно быть как можно меньше (< 0,01). Если это отношение велико, то размер буфера стоит увеличить.
max_heap_table_size — максимальный допустимый размер таблицы, хранящейся в памяти (типа MEMORY). Значение по умолчанию 16 МБ, если вы не используете MEMORY таблиц, то установите это значение равным tmp_table_size.
myisam_sort_buffer_size — размер буфера, выделяемого MyISAM для сортировки индексов при REPAIR TABLE или для создания индексов при CREATE INDEX, ALTER TABLE. Значение по умолчанию 8 МБ, его стоит увеличить вплоть до 30-40% ОЗУ. Выигрыш в производительности соответственно будет только при выполнении вышеупомянутых запросов.
net_buffer_length — объем памяти, выделяемый для буфера соединения и для буфера результатов на каждый поток. Буфер соединения будет указанного размера и буфер результатов будет такого же размера, т.е. на каждый поток будет выделен двойной размер net_buffer_length. Указанное значение является начальным и при необходимости буферы будут увеличиваться вплоть до max_allowed_packet. Размер по умолчанию 16 КБ. В случае ограниченной памяти или использования только небольших запросов значение можно уменьшить. В случае же постоянного использования больших запросов и достаточного объема памяти, значение стоит увеличить до предполагаемого среднего размера запроса.
read_buffer_size — каждый поток при последовательном сканировании таблиц выделяет указанный объем памяти для каждой таблицы. Как показывают тесты, это значение не следует особо увеличивать. Размер по умолчанию 128 КБ, попробуйте увеличить его до 256 КБ, а затем до 512 КБ и понаблюдайте за скоростью выполнения запросов типа SELECT COUNT(*) FROM table WHERE expr LIKE "a%"; на больших таблицах.
read_rnd_buffer_size — актуально для запросов с "ORDER BY", т.е. для запросов, результат которых должен быть отсортирован и которые обращаются к таблице, имеющей индексы. Значение по умолчанию 256 КБ, увеличьте его до 1 МБ или выше, если позволяет память. Учтите, что указанное значение памяти также выделяется на каждый поток.
sort_buffer_size — каждый поток, производящий операции сортировки (ORDER BY) или группировки (GROUP BY), выделяет буфер указанного размера. Значение по умолчанию 2 МБ, если вы используете указанные типы запросов и если позволяет память, то значение стоит увеличить. Большое значение переменной состояния Sort_merge_passes указывает на необходимость увеличения sort_buffer_size. Также стоит проверить скорость выполнения запросов вида SELECT * FROM table ORDER BY name DESC на больших таблицах, возможно увеличение буфера лишь замедлит работу (в некоторых тестах это так).
table_cache (table_open_cache с версии 5.1.3) — количество кэшированных открытых таблиц для всех потоков. Открытие файла таблицы может быть достаточно ресурсоемкой операцией, поэтому лучше держать открытые таблицы в кэше. Следует учесть, что каждая запись в этом кэше использует системный дескриптор, поэтому возможно придется увеличивать ограничения на количество дескрипторов (ulimit). Значение по умолчанию 64, его лучше всего увеличить до общего количества таблиц, если их количество в допустимых рамках. Переменная состояния Opened_tables позволяет отслеживать число таблиц, открытых в обход кэша, желательно, чтобы ее значение было как можно ниже.
tmp_table_size — максимальный размер памяти, выделяемой для временных таблиц, создаваемых MySQL для своих внутренних нужд. Это значение также ограничивается переменной max_heap_table_size, поэтому в итоге будет выбрано минимальное значение из max_heap_table_size и tmp_table_size, а остальные временные таблицы будут создаваться на диске. Значение по умолчанию зависит от системы, попробуйте установить его равным 32 МБ и понаблюдать за переменной состояния Created_tmp_disk_tables, ее значение должно быть как можно меньше.



по поводу битрикс, практически никогда с ней не работал, есть гораздо лучше cms например modx revo и быстрая и бесплатная и с оптимизацией БД там все в порядке...
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945428
loginovru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оказывается не все параметры установлены по-умолчанию корректны для работы, как тут доказывал мне один "спец"))
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945429
loginovru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle, к самописному ламью отношу - людей которые с нуля пушит свои "простые" движки для "сложных сайтов", вот там и с БД проблемы и с самим кодом... поэтому я такое вообще не рассматриваю - как какой-то пример... но тоже не могу за всех говорить, там есть действительно знающие люди, которые могут нормально структурировать и БД и запросы к ней)
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945430
loginovru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот для новичков статья про очень познавательная статья про оптимизацию СУБД
http://habrahabr.ru/post/108418/
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945432
loginovru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleЗнающие люди болтают, что и Магенту (если мы об одном и том же движке говорим) можно заставить работать быстро, грамотно используя настройки этой самой Магенты.
я c магенто собаку сьел, лет 5 еще уже кручу, поэтому скажу сразу, БД там очень даже от производителя хорошо оптимизирована!
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945447
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
loginovruvkle, а вот я хотел например здесь услышать следующее, но так и не услышал, это что касается буферов:Заметьте, все Вами приведённые советы по изменению настроек опираются на конкретную ситуацию. Предупреждения о том, что увеличение размеров буферов может негативно сработать из-за нехватки ОЗУ тоже имеются. Вроде как это уже было говорено выше.
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945472
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
loginovruнеобязательно, для этого нужно прописать нормально: Настройки потоков, Кэширование запросов, Тайминги, Буферы ну и InnoDB если используются! Хотелось бы услышать по каждой директиве (параметру) как их рассчитывать от ресурсов сервера ?

Нельзя. Вот цитата из единственной книжки посвященной оптимизации mysql 10423639

авторда вот посещаемость ресурсов увеличивается
нам то можешь не врать.
...
Рейтинг: 0 / 0
ускорить работу mysql сервера ?
    #38945584
loginovru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindloginovruнеобязательно, для этого нужно прописать нормально: Настройки потоков, Кэширование запросов, Тайминги, Буферы ну и InnoDB если используются! Хотелось бы услышать по каждой директиве (параметру) как их рассчитывать от ресурсов сервера ?

Нельзя. Вот цитата из единственной книжки посвященной оптимизации mysql 10423639

авторда вот посещаемость ресурсов увеличивается
нам то можешь не врать.
в смысле врать ? )
...
Рейтинг: 0 / 0
8 сообщений из 33, страница 2 из 2
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / ускорить работу mysql сервера ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]