W programie SQL Server 2005 i nowszych wersjach zmniejszanie bazy danych tempdb nie różni się od zmniejszania bazy danych użytkownika, z wyjątkiem faktu, że tempdb jest resetowana do skonfigurowanego rozmiaru po każdym ponownym uruchomieniu wystąpienia programu SQL Server. Można bezpiecznie uruchomić funkcję zmniejszania w tempdb podczas działania tempdb.
Czy zmniejszanie bazy danych poprawia wydajność?
Jednak zmniejszanie może znacząco wpłynąć na wydajność bazy danych, jeśli nie zostanie wykonane prawidłowo. Kurczenie zwiększy fragmentację i spowoduje, że każda operacja bazy danych będzie kosztowna. Po zmniejszeniu bazy danych konieczne jest przebudowanie indeksów w celu zmniejszenia fragmentacji i zwiększenia wydajności.
Jak zmniejszyć tempdb?
Możemy użyć metody GUI SSMS do zmniejszenia bazy danych TempDB. Kliknij prawym przyciskiem myszy TempDB i przejdź do Zadania. Na liście zadań kliknij Zmniejsz i możesz wybrać bazę danych lub pliki. Obie opcje bazy danych i plików są podobne do poleceń DBCC SHRINKDATABASE i DBCC SHRINKFILE, które wyjaśniliśmy wcześniej.
Czy tempdb zmniejsza się automatycznie?
Domyślnie baza danych tempdb automatycznie powiększa się, gdy wymagane jest miejsce, ponieważ MAXSIZE plików jest ustawiony na UNLIMITED. W związku z tym baza danych tempdb może nadal rosnąć, aż do wyczerpania miejsca na dysku zawierającym bazę danych tempdb.
Dlaczego tempdb jest tak duże?
Rozwój Tempdb jest głównie z powodu słabej wydajności zapytań, więc możesz użyć programu SQL Profiler i prawdopodobnie filtrować według czasu trwania dookreślić, czy istnieją jakieś procedury składowane, których wykonanie trwa dłużej niż x sekund.