Ставил не я.
Какой параметр тогда необходимо установить вместо unlimited ?
Z-Style добавил 09.11.2011 в 22:02
нет не пробовал
Стояло по умолчанию. Плохо?
Z-Style добавил 09.11.2011 в 21:55
Далее tmp_table_size уже не увеличивать?
Это откуда цифра?
Сделал поспешный, возможно неправильный вывод. Но суть в том что притормаживание бывает. Возможно конечно и не в скуле причина.
Z-Style добавил 09.11.2011 в 21:29
Ок. Число дескрипторов установлено unlimited.
Новый уже в любом случае необходим.
Z-Style добавил 09.11.2011 в 21:12
Новый сервер 2х Xeon 2.67, 48Gb
Старые настройки MySQL:
query_cache_size 16M
tmp_table_size 16M
max_heap_table_size 16M
table_cache 256
key_buffer_size 6М
Сайт в принципе работал нормально.
По логам скула не хватает кеша, не хватает индексов.
Рекомендации тюнера:
-------- Performance Metrics -------------------------------------------------
[--] Up for: 19h 1m 33s (30M q [438.654 qps], 620K conn, TX: 159B, RX: 3B)
[--] Reads / Writes: 99% / 1%
[--] Total buffers: 64.0M global + 1.6M per thread (400 max threads)
[OK] Maximum possible memory usage: 710.9M (1% of installed RAM)
[OK] Slow queries: 0% (0/30M)
[OK] Highest usage of available connections: 29% (117/400)
[OK] Key buffer size / total MyISAM indexes: 6.0M/45.1M
[OK] Key buffer hit rate: 98.9% (750M cached / 7M reads)
[OK] Query cache efficiency: 59.2% (16M cached / 27M selects)
[!!] Query cache prunes per day: 6879993
[OK] Sorts requiring temporary tables: 0% (13 temp sorts / 1M sorts)
[!!] Temporary tables created on disk: 49% (441K on disk / 884K total)
[OK] Thread cache hit rate: 97% (14K created / 620K connections)
[!!] Table cache hit rate: 1% (31 open / 3K opened)
[OK] Open file limit used: 2% (42/2K)
[OK] Table locks acquired immediately: 99% (11M immediate / 11M locks)
-------- Recommendations -----------------------------------------------------
General recommendations:
Add skip-innodb to MySQL configuration to disable InnoDB
Run OPTIMIZE TABLE to defragment tables for better performance
MySQL started within last 24 hours - recommendations may be inaccurate
When making adjustments, make tmp_table_size/max_heap_table_size equal
Reduce your SELECT DISTINCT queries without LIMIT clauses
Increase table_cache gradually to avoid file descriptor limits
Variables to adjust:
query_cache_size (> 16M)
tmp_table_size (> 16M)
max_heap_table_size (> 16M)
table_cache (> 256)
Изменил параметры:
query_cache_size 256
tmp_table_size 256
max_heap_table_size 256
table_cache 512
После изменения настроек сайт бывает притормаживает.
Процессор работает на все 100%, идлов 0
Свободной памяти 38Гб (занято 10)
Задержек от дисковой подсистемы нет.
Created_tmp_disk_tables растет по прежднему.
Opened_tables стало еще больше.
Table_locks_waited стало больше.
Рекомендации тюнера теперь:
[--] Up for: 1h 14m 12s (4M q [1K qps], 97K conn, TX: 24B, RX: 617M)
[--] Total buffers: 602.0M global + 1.6M per thread (250 max threads)
[OK] Maximum possible memory usage: 1006.3M (2% of installed RAM)
[OK] Slow queries: 0% (0/4M)
[OK] Highest usage of available connections: 9% (23/250)
[OK] Key buffer size / total MyISAM indexes: 64.0M/45.6M
[OK] Key buffer hit rate: 99.7% (34M cached / 103K reads)
[OK] Query cache efficiency: 76.7% (3M cached / 4M selects)
[OK] Query cache prunes per day: 0
[OK] Sorts requiring temporary tables: 0% (0 temp sorts / 45K sorts)
[!!] Temporary tables created on disk: 49% (10K on disk / 20K total)
[OK] Thread cache hit rate: 94% (5K created / 97K connections)
[!!] Table cache hit rate: 9% (29 open / 299 opened)
[OK] Open file limit used: 3% (41/1K)
[OK] Table locks acquired immediately: 99% (880K immediate / 880K locks)
Temporary table size is already large - reduce result set size
table_cache (> 512)
Что делать пока не знаю.
128 это действительно специфическое. У меня порядка 30мб на 1 коннект.
Сейчас отстраиваю мускул. Понял что настройки были совсем не подходящими, видимо проблема от сюда и возникала на старом сервере.
Интересно, а кто что скажет в отношении параметра key_cache_division_limit ?
По умолчанию стоит 100. Стоит ли менять?
И у меня еще возник вопрос: каким параметром в системе выставдяется ограничение на количество дескрипторов, как узнать текущее значение, и как правильно его определить для себя, каким оно может быть максимальным? Только под мускул насчитал необходимость в 1000 дескрипторах (считал максимальное кол-во соединений помноженное на кол-во используемых таблиц для одного соединения)
Видимо слишком динамичный сайт для кеширования. Как то даже были попробовали: поставили Super Cache - вроде все начиналось хорошо, но скоро увидели в браузере вместо внутренней страницы - главную. Больше решили не рисковать. Хотя сама по себе идея кеширования - это хорошая идея.
Тот сервер начинал задыхаться. На этом больше 170 пока не увидел.
ЗЫ: Спасибо всем за подсказки, немного разобрался, завтра приступлю к практике тонкой настройки. Новый сервер хоть и справляется с нагрузкой при текущих настройках, но все же хочется чтобы он работал в свое удовольствие при своих то возможностях.
Сейчас на сервере 48Gb. Используется в данный момент 41Gb
Нагрузка скачет если смотреть в рамках 24-х часов. На протяжении таких интервалов как 1 час - нагрузка равномерная.
В процессе))