#mysql
Вопрос:
В настоящее время я загрузил около 500 миллионов записей в phpMyAdmin MySQL. Для быстрого поиска я использовал индекс. Есть два столбца, из которых я хочу выполнить поиск, и для этого я создал индекс для обоих. После индексации один столбец становится слишком быстрым, а поиск по другому столбцу выполняется так же, как и до индексации. У меня около 30 40 таблиц, и я провел индексацию по всем, и MySQL показывает, что индексация прошла успешно, но когда я выполняю поиск, это происходит медленно. Я не могу понять, что в этом плохого.
Это и есть изображение. Я добавил индекс в столбец n и cnic. Отлично работает в n, но не в cnic.
инструкция select выглядит следующим образом
SELECT * FROM TABLE_NAME WHERE n='$VARIABLE' // WORKINGG VVERY FAST
SELECT * FROM TABLE_NAME WHERE cnic='$VARIABLE' //working slow
Комментарии:
1. Пожалуйста, предоставьте примерные данные таблицы и инструкцию select, которая недостаточно быстра. Также попробуйте «объяснить расширенное» перед запросом, чтобы узнать, используется ли созданный вами индекс.
2. Вероятно, вам нужно создать отдельные индексы для 2 столбцов
3. @SlavaRozhnev Я добавил отдельный индекс для обоих столбцов.
4. @AaronJ Я добавил изображение tbl с запросом
5. Не знаю. По — моему, все в порядке. Показывает ли это, что он использует индекс, когда вы это делаете
explain extended SELECT * FROM TABLE_NAME WHERE cnic='$VARIABLE'
? Может быть, попробовать удалить и воссоздать индекс, я думаю.