|
Тема |
Re: Въпрос за избор на индекси в MySQL [re: salle] |
|
Автор |
sonic86 (непознат
) |
|
Публикувано | 17.06.09 20:28 |
|
|
Не е точо така, ако селект-ваш колони от а жоин с б и сортировка по дейт индекаса би трябвало да се ползвва. Ако в секекта имаш колони от а и б тогава темп + файлс сорт са неизбежни. Възможна оптимизация е насочването на тмп дир на май ескуел към отделен бърз хард, добавяне на повече рам и увеличаване на тмп таблес и тмп макс саиз (бяха 2 променливите), или моунт на рам диск и насочване на тмп дир на там, последното ако не си наясно не го прави.
Като цяло ако няма да жоинваш огромни таблици с милиони записи препоръчвам ти да пробваш 2то предложение ако не 1то.
Друг вариант е промяна заявката да ползваш момори таблица селецтваш квото ти трябва ръгаш го в мемори таблица и го селецт-ваш сортирано.
Прочети за thread buffers в документацията и си увеличи сорт и жоийн буферите, в зависимост от паметта на сървара. Имаи предвид че те са за всяка заявка отделно така че обикновенно са между 2-10мб.
Пейст explain на заявката и също какви колони селектваш.
Дефинитиона на таблиците
|
| |
|
|
|