index и производительность

clevel

Новичок
index и производительность

есть таблица, которая состоит из 5-6 int, первичного ключа нет и автоувеличения. Ставлю индексы на столбцы, которые будут в запросе where, по статитсике размер индекса больше размера самих данных в 1,5 раза, производительность упала...
Может первичный ключ с автоинкрементом столбца поможет?
 

tony2001

TeaM PHPClub
все зависит от ситуации.
какие данные хранятся ?
какие выборки выполняются ?
 

clevel

Новичок
Автор оригинала: tony2001
все зависит от ситуации.
какие данные хранятся ?
какие выборки выполняются ?
я же сказал, целые числа.....
по нескольким из этих полей идет выборка... по этим полям я и ставлю индексы....
 

sokov

Guest
Слух, а ты как индексы сделал?

Смотри, допустим, есть запрос "... where field1=x and field2=y" - так надо индексировать сразу оба поля, т.е. один индекс вешать на все комбинации field1 и field2.
Если ты их по-отдельность проиндексировал - то не помжет.
А если делаешь выборку только "... where field1=x", то тоже не поможет, надо вешать второй индекс только на поле field1

Почитай в доках MySQL раздел про индексы - там врубиться надо, но, в принципе, толково прогнано.
 

lyu

Guest
Сделай EXPLAIN SELECT ........
и погляди какие индексы используются
 

clevel

Новичок
Смотри, допустим, есть запрос "... where field1=x and field2=y" - так надо индексировать сразу оба поля, т.е. один индекс вешать на все комбинации field1 и field2.
Если ты их по-отдельность проиндексировал - то не помжет.
А если делаешь выборку только "... where field1=x", то тоже не поможет, надо вешать второй индекс только на поле field1
Я именно так и делаю... везде, где есть столбцы, указываемые в where, я их индексирую... все.... ставлю index для field1 и fileds2...
Вопрос: эти индексы ставятся на каждый столбец свой индек... а как поставить один индекс на несколько столбцов? эту мысль я из твоего ответа вывел...
 

Crazy

Developer
clevel, ты не пробовал для разнообразняи открыть документацию на MySQL? Раздел "`CREATE INDEX' Syntax" откроет тебе путь к просветлению...
 

clevel

Новичок
clevel, ты не пробовал для разнообразняи открыть документацию на MySQL? Раздел "`CREATE INDEX' Syntax" откроет тебе путь к просветлению
если спрашиваю, значить не увидел ответа на свой вопрос...
 
Сверху