2010-05-27 5 views
1

Привет Я новичок в MySQLКаково использование ключа индекса Mysql?

Вот мои вопросы:

  1. Что такое использование ключа индекса Mysql?

  2. Имеет ли значение mysql-запросы с определением ключа индекса и без него?

  3. Все ключевые ключи ключа по умолчанию ключа?

Благодаря миллиона

ответ

3

1- Определение индекса на колонке (или набор столбцов) делает поиск по этому столбцу (или набор) гораздо быстрее, за счет дополнительного дискового пространства.

2 Да, разница в том, что запросы, использующие этот столбец, будут намного быстрее.

3- Да, как обычно, поиск по первому ключу имеет смысл, чтобы этот столбец всегда был проиндексирован.

Подробнее о индексировании MySQL here.

+0

Спасибо !!!!!!!!!!!!!!!! ~ – leon

0

Индекс действительно представляет собой дополнительный набор записей. Больше ничего.

Вещи, которые делают индексы доступ быстрее является:

  • Внутри есть больше шансов, что двигатель поместить в буфере индекса, чем целые строки таблиц
  • индекс меньше так, чтобы разобрать это означает, что чтение меньше блоков жесткого диска
  • индекс сортируется уже, поэтому найти данное значение легко
  • в случае быть не равно нулю, это даже быстрее (по разным причинам, но самая важная вещь, чтобы знать, что двигатель d oesn't магазин нулевых значений в индексах)

Чтобы узнать, является ли полезным индекс не так легко угадать (очевидно, я не говорю о первичном ключе) и должен быть исследован. Вот некоторые коллеги, когда это может замедлить ваши операции:

  • Это замедлит вставки и обновления индексированных полей
  • Это требует большего технического обслуживания: статистические данные, должны быть построены для каждого индекса, поэтому вычисления могут занять значительно больше времени, если вы добавите много индексов.
  • Это может замедлить запросы, когда статистика не обновляется. Этот эффект может быть катастрофическим, потому что двигатель действительно «ошибочно»
  • Он может замедлить работу, когда запрос неадекватен (в любом случае индексы не должны быть правилом, а исключением: нет индекса, за исключением случаев, когда есть желание Я знаю, что обычно в каждой таблице есть хотя бы один индекс, но он пришел после расследований) Мы могли бы прокомментировать этот последний момент много, но я думаю, что каждый случай особенный, и многие примеры этого уже существуют в Интернете.

Теперь о вашем вопросе «Все основные ключи ключа по умолчанию?», Я должен сказать, что оптимизатор не работает. Когда в таблице указаны различные индексы, более эффективная комбинация индексов будет скомпилирована с данными на лету и некоторыми другими статическими данными (статистика индексов), чтобы достичь лучших результатов. По умолчанию нет индекса по умолчанию, каждая ситуация лишается другого результата.

С уважением.

Смежные вопросы