У меня есть таблица (InnoDB) с десятками миллионов строк и несколькими индексами. Мне нужно удалить несколько миллионов строк с помощью первичного ключа. Эта операция довольно медленная, чем хотелось бы; что я могу сделать, чтобы ускорить его?Оптимизация удалений из очень большой таблицы MySQL
В этой таблице выполняются процессы, которые выполняют INSERT и SELECT. Если я могу это сделать, не мешая этим процессам, это было бы здорово, но это не совсем необходимо. Также (я не уверен, что это имеет значение) в этой БД нет внешних ключей.
Показать код "delete". –
Поскольку вы будете использовать основной ключ для удаления записей (т. Е. Вы ссылаетесь только на столбец первичного ключа в разделе where where), это будет охватываемый запрос кластеризованным индексом, он будет как можно быстрее, удалив миллионы строк займет свое время. –
Это похоже на довольно похожий вопрос: http://stackoverflow.com/questions/14284238/how-can-i-improve-delete-from-performance-on-large-innodb-tables –