Кроме того, в этой книге представлена трехзвездочная система оценки того, насколько индекс подходит для запроса. Индекс получает одну звезду, если он размещает соответствующие строки рядом друг с другом, вторую звезду, если его строки отсортированы в порядке, необходимом для запроса, и последнюю звезду, если содержит все столбцы, необходимые для запроса. Мы вернемся к этим принципам далее в текущей главе
Префиксные индексы могут быть отличным способом уменьшения размера и повышения быстродействия индекса, но у них есть и недостатки: MySQL не может использовать префиксные индексы для запросов с фразами ORDER BY или GROUP BY, а также задействовать их в качестве покрывающих индексов
Убедитесь, что знаете, где находится файл конфигурации вашего сервера! Нам случалось встречать людей, безуспешно пытавшихся настроить сервер с файлом, который этот сервер и не собирался читать, например /etc/my.cnf на серверах Debian, где сервер ищет свой файл конфигурации /etc/mysql/my.cnf. Иногда такие файлы находятся в нескольких местах, возможно, из-за того, что предыдущий системный администратор тоже запутался. Если вы не знаете, какие файлы читает ваш сервер, то лучше у него же и спросить:
$ which mysqld
/usr/sbin/mysqld
$ /usr/sbin/mysqld --verbose --help | grep -A 1 'Default options'
Default options are read from the following files in the given order:
Кроме того, в этой книге представлена трехзвездочная система оценки того, насколько индекс подходит для запроса. Индекс получает одну звезду, если он размещает соответствующие строки рядом друг с другом, вторую звезду, если его строки отсортированы в порядке, необходимом для запроса, и последнюю звезду, если содержит все столбцы, необходимые для запроса.
Для определения оптимальной длины префикса найдите наиболее часто встречающиеся значения и сравните их перечень со списком наиболее часто встречающихся префиксов.
CHAR — хороший выбор для хранения MD5-сверток паролей пользователей, которые всегда имеют одинаковую длину. Также тип CHAR лучше, чем VARCHAR, для данных, которые часто изменяются, потому что строка фиксированной длины не фрагментируется.