![]() |
|
Модераторы: skyboy |
![]()
|
|
| -=Ustas=- |
|
||||
![]() Ustix IT Group ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2222 Регистрация: 21.1.2005 Где: Краснодар Репутация: 4 Всего: 69 |
День добрый!
Ребята, подскажите, что можно сделать. Дело в том, что на серваке крутиться четыре базы, почти одинаковые (клоны проектов), в каждой (в каталоге) по 200-500 тыс. записей. Поставил логирование медленных запросов в my.cnf:
Вот например первый запрос, который в логе:
Где в shop_category самый мизер - 272 категорий всего, в shop_product_item около 200 тыс. записей, индексы проставлены, EXPLAIN показывает что на табличке shop_product_item они используются. В логе пишет, что выполнение 14 сек. Захожу в базу, выпоняю этот запрос - 272 rows in set (0.05 sec). Так вот вопрос, как можно точно доверится этому логированию? Потому как такая ситуация практически с каждым запросом из лога... В сутки идет примерно около 40 тыс. запросов на базу. В пики top показывает мускула до 180% нагрузки на проц. Железо - 2 ГГц, ОЗУ - 2 Гб, виртуальный сервак. Я вот думаю, может быть нажно менять уже такой сервак? Или все таки как-то можно вычислить узкие места в мускуле и оптимизировать их? Заранее благодарен -------------------- В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм. ----- |
||||
|
|||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 41 Всего: 260 |
||||
|
||||
| -=Ustas=- |
|
|||
![]() Ustix IT Group ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2222 Регистрация: 21.1.2005 Где: Краснодар Репутация: 4 Всего: 69 |
Всмысле? В самом приложении? Нигде в SQL-запросах блокировок нет. Добавлено через 1 минуту и 30 секунд Я так подозреваю, если не ссылаться на немощьность железа, есть еще какое-то узкое место в одном из каких-либо запросов. Вот только его поймать нужно ) -------------------- В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм. ----- |
|||
|
||||
| Бонифаций |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 827 Регистрация: 15.9.2005 Где: Brisbane Репутация: 20 Всего: 40 |
в том смысле что если например крутится длинный запрос который обновляет (скажем) shop_product_item, то запрос на чтение рискует быть залокированным пока обновление не завершится..
Завист от 1) типа таблицы. 2) типа транзакций. Если у вас к примеру innodb и repeatable read , то блокировки такого типа очень даже возможны.3) ну и конечно от workload -------------------- Бонифаций. |
|||
|
||||
| solenko |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1473 Регистрация: 15.1.2006 Где: Украина Репутация: 4 Всего: 67 |
-=Ustas=-, а explain этого запроса? Вложенный запрос сколько выполняется? (время его выполнения ведб прийдется на 200 умножить).
Бонифаций, насколько я знаю, блокированные запросы в slow_query не попадают, т.к. расчитывается фактические время выполнения запроса без учета ожидания. -------------------- Ла-ла-ла-ла Заметьте, нет официального подтверждения, что это не просто четыре слога. |
|||
|
||||
| -=Ustas=- |
|
|||
![]() Ustix IT Group ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2222 Регистрация: 21.1.2005 Где: Краснодар Репутация: 4 Всего: 69 |
Бонифаций, таблицы MyISAM, обновление там происходит только одно - это инкрементация счетчика по примари кею в уловии.
solenko, вот EXPLAIN:
-------------------- В искаженном мире все догмы одинаково произвольны, включая догму о произвольности догм. ----- |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |