Перейти к содержанию
СофтФорум - всё о компьютерах и не только

Проблема с MySQL


Рекомендуемые сообщения

Здравствуйте!

Есть у меня сайт, работает уже несколько лет, и соответственно БД уже большая.

Случилась такая проблема:

Есть таблица, назовем её `table1`

у неё есть данные:

--------------

| id | a | b |...

| 1 | 1 | 9 |

| 2 | 2 | 7 |

| 3 | 2 | 6 |

| 4 | 3 | 2 |

| 5 | 2 | 1 |

............

в реальной таблице 350 000 строк (в принципе это не много) и 3 индекса

сегодня обнаружил что при запросе:

UPDATE `table1` SET `b`='1' WHERE `a`=2

MySQL ведет себя некорректно, т.е. обновляет только первую попавшуюся строку и все, а например в приведенном мною примере он должен обновить сразу 3 строки.

Мне коллеги подсказали что такое бывает из-за индексов, порекомендовали - если есть индексы в таблице кроме PRIMARY, чтобы я их удалил и потом их же заново создал.

Я так и сделал и у меня все заработало как и прежде, но это меня ужаснуло! Как так? Никакой защиты?

Я спать спокойно не смогу если буду знать что у меня таблица в любой момент "захочет по прикалываться" и перестанет нормально выполнять запросы.

Подскажите, почему такое происходит? Как защитится от этого?

Изменено пользователем bmmshayan
Ссылка на комментарий
Поделиться на другие сайты

Можно запустить крона чтоб переодически проверял и изправлял таблиц. Если у вас MyISAM читайте здесь:

http://dev.mysql.com/doc/refman/5.1/en/myisam-maintenance-schedule.html

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...