Rzeczy, które mogą spowolnić usuwanie:
- usuwanie wielu rekordów
- wiele indeksów
- brakujące indeksy w kluczach obcych w tabelach podrzędnych. (dziękuję @CesarAlvaradoDiaz za wspomnienie o tym w komentarzach)
- zakleszczenia i blokowanie
- wyzwalacze
- kaskadowe usuwanie (tych dziesięciu rekordów nadrzędnych, które usuwasz, może oznaczać usunięcie milionów rekordów podrzędnych)
- Dziennik transakcji musi się rozwijać
- Wiele kluczy obcych do sprawdzenia
Więc twoim wyborem jest sprawdzenie, co blokuje i naprawienie tego lub uruchomienie usuwania poza godzinami, kiedy nie będą zakłócać normalnego obciążenia produkcyjnego. Możesz uruchomić usuwanie w partiach (przydatne, jeśli masz wyzwalacze, usuwanie kaskadowe lub dużą liczbę rekordów). Możesz upuścić i odtworzyć indeksy (najlepiej, jeśli możesz to zrobić również poza godzinami pracy).