2011-06-01 13 views
5

Ran w ciekawy problem z tabeli MySQL Budowałem jako tymczasowy tabeli dla celów sprawozdawczych.Powolne DROP tabeli tymczasowej

stwierdziliśmy, że jeśli ja nie określono silnik składowania, polecenie DROP tabeli tymczasowej zawiśnie na okres do pół sekundy.

Gdybym zdefiniowane moim stole jak ENGINE = pamięć ta krótka powiesić zniknie.

Jak mam rozwiązanie tego problemu (przy użyciu tabel pamięci), moje pytanie jest dlaczego tymczasowy stół będzie trwać długo spadać? Czy domyślnie nie używają silnika MEMORY? To nie jest nawet bardzo duży stół, kilkaset wierszy z moimi aktualnymi danymi testowymi.

Odpowiedz

4

tabele tymczasowe, domyślnie zostanie utworzony gdzie kiedykolwiek konfiguracja mysql informuje go, zazwyczaj/tmp czy gdzieś indziej na dysku. Możesz ustawić tę lokalizację (a nawet wiele lokalizacji) na lokalizację dysku RAM, taką jak/dev/shm.

Mam nadzieję, że to pomoże!

+1

prostu wydaje się dziwne, że tylko usunięcie pliku (który to wszystko jest naprawdę DROP TABLE) spowodowałoby pół sekundy brak reakcji. – GordonM

Powiązane problemy