Самый быстрый способ удалить огромную таблицу MySQL - PullRequest
51 голосов
/ 18 мая 2009

У меня огромная база данных MySQL (InnoDB) с миллионами строк в таблице сеансов, которые были созданы несвязанным, неработающим сканером, работающим на том же сервере, что и наш. К сожалению, сейчас я должен исправить ситуацию.

Если я попытаюсь truncate table sessions;, это займет слишком много времени (более 30 минут). Я не забочусь о данных; Я просто хочу как можно быстрее стереть стол. Есть ли более быстрый способ, или мне придется просто выложить его на ночь?

Ответы [ 11 ]

0 голосов
/ 19 мая 2009

У нас были эти проблемы. Мы больше не используем базу данных в качестве хранилища сессий с Rails 2.x и хранилищем cookie. Тем не менее, падение таблицы является достойным решением. Возможно, вы захотите остановить службу mysql, временно отключить ведение журнала, запустить все в безопасном режиме и затем выполнить команду drop / create. Когда закончите, включите регистрацию снова.

...