Temp tempu mojego wystąpienia zwiększył się ogromnie, pochłaniając całą dostępną przestrzeń dyskową i powodując awarię aplikacji. Musiał ponownie uruchomić instancję w sytuacji awaryjnej. Chciałbym jednak zbadać i pogrążyć się głęboko w tym, co spowodowało, że tymczasowe bazy danych stały się nagle ogromne. Jakie były zapytania, procesy, które to spowodowały? Czy ktoś może mi pomóc w wyciągnięciu wymaganych informacji. Wiem, że nie otrzymam wiele danych historycznych z SQL Server. Mam wdrożony Idera SQL Diagnostic Manager (narzędzie innej firmy). Każda pomoc w korzystaniu z tego narzędzia byłaby naprawdę doceniana.SQL Server 2005 - Zbadaj, co spowodowało ogromny wzrost temperatury tempdb
Odpowiedz
Istnieje kilka powodów, które mogą spowodować, że tempdb stanie się bardzo duży.
Wiele sortowania - jeśli to wymaga więcej pamięci niż serwer sql jest wtedy będzie przechowywać wszystkie wyniki temp w tempdb Komendy
DBCC - jeśli często działa komendy takie jak DBCC CHECKDB może to być przyczyna. Funkcje te przechowywać swoje wyniki w db temp
bardzo dużych resultsets - są one również przy użyciu db temp działał poprawnie
wiele ciężkich operacji, takich jak wkładki luzem
Sprawdź ten artykuł Więcej szczegółów http://msdn.microsoft.com/en-us/library/ms176029.aspx w jaki sposób rozwiązać ten problem.
AK2, Posiadamy również narzędzie Idera DM. Jeśli znasz ramy czasowe, o których czas był używany, to możesz przejść do Historii w narzędziu Idera, aby sprawdzić, jakie zapytanie zostało uruchomione w tym czasie i co doprowadziło serwer do węża ... Na "Przestrzeni Tempdb wykorzystanej OverTime "zazwyczaj widzisz linię prostą lub wykres, ale w czasie intensywnego używania tempdb jest szczupak i kropla prosta. Odnosząc się do tego przedziału czasowego, możesz sprawdzić Sesje> Szczegóły również, zobacz dokładne zapytanie i kto prowadził zapytanie.
W naszym serwerze dzieje się to zazwyczaj, gdy trwa długie zapytanie, które powoduje wiele sprzężeń. lub gdy istnieje kosztowna kwerenda z udziałem w dumpingu do tabeli temp/tabela zmiennej. Mam nadzieję, że to pomoże.
Można użyć SQL Profiler
. Spróbuj poniżej
odnośnik chodzi o analizę post mortem, można użyć narzędzia już zainstalowane na serwerze. W przypadku przyszłej proaktywnej analizy można użyć śledzenia SQL bezpośrednio w programie SQL Profiler lub wykonać zapytanie dotyczące śledzenia za pomocą instrukcji SQL.
Można również użyć narzędzia audytu, który śledzi każde zdarzenie, które miało miejsce na przykład SQL Server i baz danych, takich jak ApexSQL Comply. Wykorzystuje również ślady SQL, konfiguruje je automatycznie i przetwarza przechwycone informacje. Śledzi dostęp do obiektu i danych oraz zmiany, nieudane i udane logowania, zmiany zabezpieczeń itp. ApexSQL Comply ładuje wszystkie przechwycone informacje do centralnego repozytorium.
- 1. SQL Server 2005 Memory Pressure i tempdb zapisują problem
- 2. SQL Server 2005: Deadlock transakcji
- 3. Obliczona kolumna SQL Server 2005 jest utajniona
- 4. SQL Server 2005 - Sprawdź wartość zerową DateTime
- 5. Jak dołączyć do pola tekstowego w SQL Server 2005 SQL Server 2005
- 6. Zapytanie Active Directory z SQL Server 2005
- 7. SQL Server 2005: zerowalny klucz obcy
- 8. SQL Server 2005: Dlaczego transakcje nazw?
- 9. Hierarchiczne zapytania w SQL Server 2005
- 10. SQL Server 2005 - usuwanie wyzwalaczy tabel?
- 11. SQL Server 2005: Jak odjąć 6 miesięcy
- 12. dołączyć trzy tabele w SQL Server 2005
- 13. SQL Server 2005 ORDER BY z wyrazem
- 14. SQL Server 2005: Określ typ danych zmiennej
- 15. Jak zdefiniować ENUM w SQL Server 2005?
- 16. Łączy ntext w programie SQL Server 2005
- 17. Pomiń pierwszy wiersz w SQL Server 2005?
- 18. SQL Server 2005 implementacja MySQL REPLACE INTO?
- 19. Zakres o CTE w SQL Server 2005
- 20. SQL Server 2005 Datownik Data Zapytanie
- 21. Sql server Integration Services kompatybilność 2008-2005
- 22. SQL Server: DateDiff funkcja spowodowało przepełnienie podczas korzystania milisekundy
- 23. SQL Server 2005: T-SQL do tymczasowego wyłączenia wyzwalacza
- 24. Czym dokładnie jest mapowanie użytkowników SQL Server 2005?
- 25. SQL Server 2005: Indeks większy niż dane przechowywane
- 26. Jak włączyć indeksowanie pełnotekstowe w SQL Server 2005 Express?
- 27. Symulacja funkcji MySQL group_concat w Microsoft SQL Server 2005?
- 28. Jak mogę używać if po CTE (SQL Server 2005)
- 29. Czy SQL Server 2005 ma odpowiednik typu danych ENUM MySql?
- 30. Visual Studio 2005 nie obsługuje Sql Server 2008
Nie sądzę, że można przeprowadzić analizę pośmiertną. Jednak można przeczytać wiele interesujących informacji na temat śledzenia użycia tempdb tutaj: http://technet.microsoft.com/library/Cc966545 –