Walka z Windows.edb Wzrost usług wyszukiwania systemu Windows

Plik Windows.edb Jest to indeksowa baza danych usługi wyszukiwania systemu Windows (Windows Search), która zapewnia użytkownikom szybkie wyszukiwanie danych w systemie plików poprzez indeksowanie plików, liter w plikach pst i innej zawartości. Oczywiście im więcej plików w systemie, tym większy może zająć plik Windows.edb. W niektórych przypadkach może wzrosnąć do dziesiątek, a nawet setek GB, zajmując całe wolne miejsce na dysku systemowym.

Ten plik jest ukryty i domyślnie jest przechowywany w katalogu C: \ ProgramData \ Microsoft \ Search \ Data \ Applications \ Windows \.

Uwaga. Ten plik jest dostępny we wszystkich nowoczesnych systemach operacyjnych klienta i serwera MSFT: od Windows 7 / Vista / Server 2008 do Windows 10 / Server 2016.

Na przykład w moim przypadku rozmiar pliku Windows.edb jest większy niż 15,5 GB (co stanowi prawie 15% na moim dysku SSD 100 GB)

Istnieje kilka sposobów kontrolowania wzrostu wielkości pliku Windows.edb.

Treść

  • Przebudowa indeksu wyszukiwania systemu Windows
  • Defragmentuj Windows.edb za pomocą Esentutl
  • Usuń i ponownie utwórz plik Windows.edb
  • Przenieś plik Windows.edb na inny dysk
  • Poprawka zapobiegająca nadmiernemu wzrostowi pliku Windows.edb w systemie Windows 8 / Windows Server 2012

Przebudowa indeksu wyszukiwania systemu Windows

Najbardziej „poprawnym”, ale nie najskuteczniejszym sposobem zmniejszenia rozmiaru pliku Windows.edb jest rozpoczęcie procesu ponownego indeksowania danych w systemie. Aby to zrobić, otwórz Panel sterowania -> Indeksowanie Opcje -> Zaawansowane -> Przebuduj (aby otworzyć to okno dialogowe, po prostu uruchom polecenie rundll32.exe shell32.dll, Control_RunDLL srchadmin.dll).

Po pewnym czasie (zwykle dość długim) system zakończy ponowne indeksowanie danych, a rozmiar pliku edb nieznacznie się zmniejszy.

Defragmentuj Windows.edb za pomocą Esentutl

Ponieważ plik indeksu usługi wyszukiwania Windows jest bazą danych w formacie EDB, można go zdefragmentować za pomocą standardowego narzędzia do obsługi takich baz danych esentutl.exe - Narzędzia Extensible Storage Engine Utilities (powinny być znane administratorom Exchange). Defragmentacja bazy danych odbywa się w trybie offline (baza danych nie powinna być używana), więc najpierw musisz zatrzymać usługi wyszukiwania. Wszystkie te operacje można połączyć w jeden skrypt:

sc config wsearch start = wyłączone
sc stop wsearch
esentutl.exe / d% AllUsersProfile% \ Microsoft \ Search \ Data \ Applications \ Windows \ Windows.edb
sc config wsearch start = opóźniony-auto
sc rozpocznij wyszukiwanie

Wskazówka. Na dysku musi być wystarczająca ilość wolnego miejsca, aby przeprowadzić defragmentację, as kopia pliku edb zostanie utworzona.

Narzędzie esentutl wyświetla na ekranie postęp defragmentacji.

Uwaga. Jeśli wystąpi błąd podczas uruchamiania polecenia esentutl: Operacja została zakończona z błędem -1213 (JET_errPageSizeMismatch, rozmiar strony bazy danych nie odpowiada silnikowi) po 10,125 sekundach, oznacza to, że twój system jest 64-bitowy i do defragmentacji musisz użyć esentutl w wersji x32. Tj. trzecie polecenie będzie wyglądać następująco:
„C: \ Windows \ SysWOW64 \ esentutl.exe” / d% AllUsersProfile% \ Microsoft \ Search \ Data \ Applications \ Windows \ Windows.edb

W moim przypadku rozmiar pliku edb po defragmentacji zmniejszył się o 30%.

Usuń i ponownie utwórz plik Windows.edb

Jeśli miejsce na dysku jest krytycznie niskie, możesz bezpiecznie usunąć plik Windows.edb. Aby to zrobić, zatrzymaj usługę wyszukiwania systemu Windows i usuń plik.

net stop „Windows Search”
del% PROGRAMDATA% \ Microsoft \ Search \ Data \ Applications \ Windows \ Windows.edb
start netto „Windows Search”

Po ponownym uruchomieniu usługa wyszukiwania systemu Windows rozpocznie proces ponownego indeksowania systemu i ponownego utworzenia pliku Windows.edb (podczas pełnego ponownego indeksowania wydajność systemu może się zmniejszyć).

Przenieś plik Windows.edb na inny dysk

W niektórych przypadkach, gdy rozmiar pliku stale rośnie Windows.edb, sensowne jest przeniesienie bazy danych indeksu wyszukiwania Windows na inny wolumin. Tak więc ekstremalny wzrost bazy nie spowoduje zatrzymania systemu po wyczerpaniu wolnej przestrzeni na partycji systemowej. Z reguły należy to robić na serwerach terminali RDS, na których użytkownicy aktywnie pracują z plikami, folderami osobistymi i innymi indeksowanymi treściami.

Aby zmienić lokalizację pliku otwarte Kontrola Panel \Indeksowanie Opcje \Zaawansowane \ Indeks lokalizacja->Nowy Lokalizacja  i określ ścieżkę do nowej lokalizacji pliku Windows.edb.

Poprawka zapobiegająca nadmiernemu wzrostowi pliku Windows.edb w systemie Windows 8 / Windows Server 2012

Aby rozwiązać problem ciągłego wzrostu rozmiaru pliku Windows.edb w systemie Windows 8 i Windows Server 2012, wydano specjalną poprawkę, która jest zawarta w pakiecie aktualizacji z maja 2013 r. - KB 2836988. Zaleca się pobranie i zainstalowanie go w tych wersjach systemu Windows.