2012-02-04 3 views
0

У меня есть таблица с 2 столбцами, одна из них уникальна ... В этой таблице у меня есть 112 000 000 строк ... выбор и удаление запросов для одной строки занимает более 60 секунд. ..Это нормально, и есть ли способ уменьшить время выполнения?Как оптимизировать большую таблицу в MySQL

+2

Либо вы выполняете запрос на 1MHz микроконтроллере, считывая данные с 5,25-дюймового гибкого диска по 300-сантиметровому модему, либо вы действительно не любите индексы. – CAFxX

ответ

0

Опубликовать свой DDL.

Обычно вы хотите, чтобы у вас была соответствующая индексация.

Просмотрите план выполнения.

Размер таблицы должен быть неактуальным для однострочных удалений с соответствующим выбором индекса.

+0

@ user1189407 «Post your DDL» следует интерпретировать как работающий «DESC yourtablename "или даже лучше" SHOW CREATE TABLE yourtablename "в отношении базы данных и публикации вывода –

0

Там может быть много причин, нам нужно для информации:

  1. Типы колонн - они VARCHAR, текст, Int?
  2. Query вы пытаетесь вызвать
  3. использования EXPLAIN запроса и скопировать вставить результат
  4. Есть ли у вас какие-либо показатели?

Скорее всего, у вас нет надлежащих индексов. Если у вас их есть, возможно, они не используются. Например, если у вас есть id, varchar и вы пытаетесь сделать select * из таблицы, где varchar LIKE '% something%', то ваш индекс в столбце varchar не может быть использован. Вот почему нам нужен результат объяснения.

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