Я читал о реорганизации большого медленного SQL-запроса над здесь, а текущий самый высокий ответ - от Митча Пшеница, который хочет убедиться, что запрос использует индексы для главный выбирает и упоминает:
Первое, что я хотел бы сделать, это проверить, чтобы периодически запускалось активное обслуживание по обслуживанию индекса. Если нет, получите все существующие индексы, перестроенные или, если возможно, по крайней мере, обновите статистику.
Я только любитель DBA, и я сделал несколько программ фрилансеров, которые в основном являются настольными клиентами Java, а иногда и бэкэнд MySQL. Когда я настраиваю систему, я знаю, чтобы создать индекс в столбцах, которые будут запрашиваться, там varchar CaseID и varchar CustName.
Тем не менее, я установил эту систему несколько месяцев назад и оставил ее клиентом, и я считаю, что индексы должны расти по мере ввода данных, и я считаю, что все по-прежнему работает хорошо. Я обеспокоен тем, что индексы должны периодически перестраиваться, потому что сегодня я прочитал, что должно быть "активное обслуживание". Единственное техническое задание, которое я задал, - это ночная резервная копия.
Я хотел спросить сообщество о регулярном обслуживании, которое может потребоваться базе данных. Нужно ли перестраивать индексы? Могу ли я доверять бэкэнду MySQL, чтобы он продолжал работать до тех пор, пока с ним не обходится никто, а данные остаются под несколькими гигабайтами?