Metody odzyskiwania danych z serwera Microsoft Exchange
Microsoft Exchange Server to popularny i niezawodny serwer e-mailu, charakteryzujący się doskonałą kompatybilnością z klientem Outlook, szeroko stosowany w wielu organizacjach. Czasami może dojść do utraty danych e-mailu lub uszkodzenia bazy danych Exchange. Na szczęście w wielu przypadkach możliwe jest odzyskanie danych e-mailu z serwera Microsoft Exchange Server przy użyciu narzędzi natywnych oraz narzędzi innych producentów.
W tym wpisie na blogu omówiono proces odzyskiwania danych z serwera Exchange, w tym odzyskiwanie baz danych Exchange oraz skrzynek pocztowych Exchange.
Podstawy odzyskiwania danych z serwera Exchange
Serwer Microsoft Exchange Server przechowuje wszystkie dane e-maila w bazach danych. Bazy danych są zapisane w plikach .edb . Kolejnym ważnym elementem bazy danych Exchange są pliki dziennika transakcji. Dzienniki transakcji służą do odzyskiwania danych z serwera Exchange w przypadku, gdy baza danych nie została prawidłowo zamknięta, a niektóre transakcje nie zostały zatwierdzone (na przykład w wyniku nagłego wyłączenia serwera spowodowanego zanikiem zasilania). Można użyć tych dzienników do ponownego odtworzenia niezatwierdzonych transakcji w bazie danych.
Domyślna ścieżka do bazy danych Exchange dla Microsoft Exchange Server 2013, 2016 i 2019 to:
C:Program FilesMicrosoftExchange ServerV15MailboxExchange_Database_Name.edb
Zaleca się przechowywanie bazy danych Exchange Server i jej plików dziennika na oddzielnych woluminach. W naszym przykładzie stosujemy to podejście. Na serwerze może znajdować się wiele baz danych używanych przez jedną instancję Exchange.
Informacje o serwerze Exchange można uzyskać w Exchange Management Shell (znanym również jako Exchange Server PowerShell), który jest interfejsem wiersza poleceń opartym na PowerShell. Aby otworzyć Exchange Management Shell, uruchom to polecenie w konsoli PowerShell:
LaunchEMS
W graficznym interfejsie Windows przejdź do:
Start > Microsoft Exchange Server 2016 > Exchange Management Shell
Następnie możesz użyć tego polecenia, aby uzyskać informacje o serwerze Exchange:
Get-ExchangeServer
Bardziej szczegółowe polecenie pozwalające znaleźć wszystkie bazy danych Exchange i wyświetlić ich nazwy, lokalizację oraz ścieżkę do plików dziennika:
Get-MailboxDatabase | Select Name,EdbFilePath,LogFolderPath
Istnieją dwa główne podejścia do odzyskiwania danych Exchange:
- Odzyskiwanie z wykonanej kopii zapasowej
- Odzyskiwanie lub naprawa bazy danych Exchange bez wykonanej kopii zapasowej
Przyjrzyjmy się każdemu z tych dwóch podejść.
Odzyskiwanie danych Exchange za pomocą programu Kopia zapasowa systemu Windows Server
Kopia zapasowa systemu Windows Server to natywna funkcja ochrony danych systemu Windows, której można używać do wykonywania kopii zapasowych danych, takich jak woluminy, pliki i foldery na komputerze z systemem Windows Server. Jeśli na tym komputerze z systemem Windows Server zainstalowany jest serwer Microsoft Exchange, wtyczka Exchange dla programu Kopia zapasowa systemu Windows Server umożliwia utworzenie spójnej z aplikacją (obsługującej Exchange) kopii zapasowej przy użyciu Technologia VSS.
Domyślnie funkcja Kopia zapasowa systemu Windows Server jest wyłączona. Aby wykonać kopię zapasową i przeprowadzić Odzyskiwanie danych Exchange, należy włączyć tę funkcję.
Uwaga: Przed przystąpieniem do Odzyskiwania danych Exchange należy posiadać Wykonać kopię zapasową serwera Exchange . Należy włączyć natywną kopię zapasową systemu Windows Server, gdy serwer Exchange działa poprawnie, zanim dojdzie do utraty danych. Jeśli nie masz kopii zapasowej, włączenie funkcji Kopia zapasowa systemu Windows Server dla programu Exchange nie pomoże w przypadku awarii programu Exchange.
Włączanie funkcji Kopia zapasowa systemu Windows Server
Aby korzystać z tego natywnego narzędzia do tworzenia kopii zapasowych, musisz włączyć funkcję Kopia zapasowa systemu Windows Server.
- Uruchom polecenie w programie PowerShell, aby włączyć funkcję Kopia zapasowa systemu Windows Server:
Install-WindowsFeature Windows-Server-BackupJeśli wolisz korzystać z graficznego interfejsu użytkownika (GUI) w systemie Windows Server, wykonaj następujące czynności:
Otwórz stronę
Server Manager. KliknijManage > Add Roles and Featuresi postępuj zgodnie z instrukcjami kreatora. W krokuFeatureskreatora wybierzWindows Server Backup.
- Po włączeniu funkcji
Windows Server Backupuruchom to narzędzie z poziomu Menedżera serwera:Server Manager > Tools > Windows Server BackupTeraz możesz wykonać kopię zapasową serwera Exchange i innych komponentów systemu Windows Server.
Tworzenie kopii zapasowej serwera Exchange za pomocą narzędzia Kopia zapasowa systemu Windows Server
Kliknij prawym przyciskiem myszy Local backup w lewym panelu głównego okna Windows Server Backup i wybierz Backup Schedule z menu kontekstowego.
Otworzy się okno Backup Schedule Wizard .
Getting Started. Zapoznaj się z informacjami i kliknijNext.Select Backup Configuration. WybierzCustom. KliknijNextna każdym etapie kreatora, aby kontynuować.
Select Items for Backup. Wybierz wolumin (partycję) z bazą danych serwera Exchange oraz partycję z plikami dziennika bazy danych Exchange. Ważne jest, aby wybrać wolumin (woluminy), a nie pliki lub foldery. W przeciwnym razie mogą wystąpić problemy podczas procesu Odzyskiwania danych Exchange. W naszym przykładzie pliki.edbsą przechowywane naE:, a pliki dziennika bazy danych Exchange są przechowywane naF:.Uwaga: Podczas ręcznego wykonywania kopii zapasowej bazy danych serwera Exchange jako konkretnych plików należy najpierw odmontować bazę danych.
Kliknij
Advanced Settings. W oknieAdvanced SettingswybierzVSS full backupw zakładceVSS Settings, jeśli chcesz skrócić dzienniki bazy danych Exchange po wykonaniu kopii zapasowej. Jeśli chcesz zachować logi lub korzystasz również z innej aplikacji do wykonywania kopii zapasowych serwera Exchange, wybierz opcjęVSS copy Backup.
Specify Backup Time. Możesz ustawić częstotliwość wykonywania kopii zapasowej. Może to być raz dziennie lub częściej.
Select Destination Disk. Wybierz dysk, na którym chcesz zapisać kopię zapasową serwera Exchange. W naszym przypadku używamy dyskuG:
Pojawi się komunikat ostrzegający, że wszystkie istniejące dane na wybranym dysku zostaną usunięte. KliknijYes, aby kontynuować.
Uwaga: Narzędzie Windows Server Backup zapisuje kopie zapasowe woluminów w formacie Dysk wirtualny VHDX na wybranym dysku/woluminie. Jeśli rozmiar woluminu dysku, którego kopię zapasową wykonasz, nie przekracza maksymalnych limitów formatu VHDX, nie ma powodu do obaw.
Confirmation. Sprawdź wybrane ustawienia i kliknijFinish.
Możesz sprawdzić stan kopii zapasowej bazy danych serwera Exchange za pomocą polecenia:Get-MailboxDatabase -Status | Select Name,*backup*
Odzyskiwanie danych Exchange z kopii zapasowej systemu Windows Server
Po wykonaniu kopii zapasowej możesz przystąpić do odzyskiwania danych Exchange.
Otwórz okno Windows Server Backup . Kliknij prawym przyciskiem myszy Local Backup i w menu kontekstowym kliknij Recover.
Otworzy się okno Recovery Wizard .
Getting Started. Wybierz lokalizację kopii zapasowej. Przechowujemy kopię zapasową na tym serwerze i wybieramy pierwszą opcję. KliknijNext, aby kontynuować.
Select Backup Date. Wybierz potrzebną datę kopii zapasowej (czyli punkt odzyskiwania), na przykład najnowszą dostępną kopię zapasową.
Select Recovery Type. WybierzApplications. Opcja Applications może być nieaktywna (wyszarzona), jeśli w ustawieniach kopii zapasowej programu Windows Server Backup wybrano pliki lub foldery zamiast wykonywania kopii zapasowej woluminów.Uwaga: Możesz wybrać
Files and foldersi odzyskać.edbpliki bazy danych Exchange oraz logi do lokalizacji niestandardowej. Następnie możesz użyć tych plików jako bazy danych do odzyskiwania danych Exchange w celu odzyskania danych Exchange.
-
Specify Recovery Options. Dostępne są dwie opcje miejsca docelowego odzyskiwania:Recover to original location. Pliki Exchange są odzyskiwane do pierwotnej lokalizacji, w której znajdowały się oryginalne pliki Exchange. Nie można wybrać bazy danych do przywrócenia. Przywrócone zostaną wszystkie pliki Exchange.Recover to another location. Można wybrać inną lokalizację do odzyskania danych Exchange z kopii zapasowej Windows Server do bazy danych odzyskiwania (RDB). Następnie można użyć tej bazy danych odzyskiwania Exchange do przywrócenia rzeczywistej bazy danych Exchange. Baza danych Exchange przywrócona do innej lokalizacji ma stan nieczystego zamknięcia.
Wybieramy Recover to the original location.
Confirmation. Sprawdź, czy wybrane wcześniej ustawienia są prawidłowe.- Postęp odzyskiwania . Poczekaj, aż odzyskiwanie danych Exchange zostanie zakończone. Po zakończeniu odzyskiwania danych Exchange z kopii zapasowej (w tym przykładzie do pierwotnej lokalizacji) zamontuj bazę danych i sprawdź, czy została ona pomyślnie przywrócona. Bazę danych można zamontować w Centrum administracyjnym Exchange, jak pokazano na poniższym zrzucie ekranu.

Bazę danych Exchange można zamontować w wierszu poleceń:Mount-Database DB01gdzieDB01to nazwa bazy danych.Sprawdź stan bazy danych w powłoce zarządzania Exchange:
Get-MailboxDatabase -Server -Status | fl Name,*FullBackup
Po zamontowaniu bazy danych może pojawić się komunikat o błędzie informujący, że nie można zamontować bazy danych. Możliwymi przyczynami błędu mogą być fizyczne uszkodzenie dysku, na którym przechowywany jest plik bazy danych, lub uszkodzenie logiczne spowodowane błędami oprogramowania, nieprawidłowym wyłączeniem serwera itp. Narzędzie wiersza poleceń eseutil może pomóc w rozwiązaniu tego problemu.
Odzyskiwanie bazy danych Exchange w wierszu poleceń
Skopiuj pliki bazy danych Exchange (.edb) oraz pliki dziennika do niestandardowego folderu na dysku (na przykład D:DBrecoveryDB01 ) w celu Odzyskiwania danych Exchange. Możesz skopiować i użyć plików odzyskanych w poprzednim kroku z programu Windows Server Backup. Typowym sposobem jest przywrócenie folderów bazy danych i dzienników bazy danych z programu Windows Server Backup do niestandardowej lokalizacji (na przykład D:DBrecoveryDB01 ).
Jeśli wybrałeś opcję Files and folders (podczas odzyskiwania danych z programu Windows Server Backup) i odzyskałeś pliki .edb oraz pliki dziennika Exchange do niestandardowej lokalizacji, możesz użyć tych plików do odzyskiwania danych oraz jako bazy danych odzyskiwania Exchange. Baza danych odzyskiwania to specjalny rodzaj bazy danych Exchange, którą można zamontować i przywrócić dane do oryginalnej bazy danych Exchange podczas procesu odzyskiwania danych Exchange. Nadaj unikalną nazwę bazie danych odzyskiwania.
Musimy użyć eseutil do odzyskiwania bazy danych Exchange i naprawy problemów z bazą danych.
eseutil.exe znajduje się domyślnie w tym folderze:
C:Program FilesExchange Serverbin
Może być konieczna zmiana katalogu na ten w wierszu poleceń lub konsoli PowerShell (jeśli ta ścieżka nie jest dodana do zmiennej PATH w systemie Windows).
Składnia eseutil umożliwiająca zastosowanie metody miękkiej do odzyskiwania bazy danych poprzez określenie lokalizacji pliku bazy danych i folderu dziennika transakcji:
eseutil /R EXX /l
gdzie EXX jest prefiksem generowania dziennika, np. E00, E01, E02, itp.
Przed przystąpieniem do odzyskiwania bazy danych Exchange należy zdiagnozować bazę danych.
- Sprawdź, w jakim stanie znajduje się baza danych:
eseutil.exe /MH D:DBRecoveryDB01DB01.edb
Stan: Dirty Shutdown
Oznacza to, że baza danych nie jest w spójnym stanie i musimy rozwiązać ten problem, zanim będziemy mogli używać tej bazy danych na serwerze Exchange.
Poniżej w wynikach można również znaleźć informacje o tym, które dzienniki są potrzebne do przywrócenia stanu bazy danych Exchange do Clean Shutdown. Informacje te są przechowywane w nagłówkach bazy danych .edb .
- Sprawdź, czy logi nie są uszkodzone:
eseutil.exe /ml E00
Status OK musi być wyświetlony, jeśli logi nie są uszkodzone.
- Nasze logi są w dobrym stanie i możemy przeprowadzić odzyskiwanie bazy danych Exchange metodą miękkiego odzyskiwania.
eseutil /r E00 /l D:DBrecoveryDB01 /d D:DBrecoveryDB01
/l – ustaw lokalizację logów bazy danych
/d – ustaw miejsce docelowe z plikiem bazy danych .edb , który musimy odzyskać przy użyciu logów i przywrócić do stanu czystego
- Sprawdź stan bazy danych po odzyskaniu za pomocą znanego polecenia:
eseutil /R E00 /l D:DBrecoveryDB01 /d D:DBrecoveryDB01
W naszym przypadku stan wynosi teraz Clean Shutdown .
Nasza baza danych jest teraz w dobrym stanie i możemy jej użyć jako bazy do odzyskiwania danych, na przykład do odzyskiwania skrzynek pocztowych w Exchange.
Odzyskiwanie danych z bazy do odzyskiwania skrzynek pocztowych Exchange
Możesz odzyskać skrzynkę pocztową Microsoft Exchange dla konkretnego użytkownika, korzystając z bazy do odzyskiwania.
- Utwórz bazę do odzyskiwania danych Exchange (używając istniejącego pliku
.edb) za pomocą polecenia w stylu:
New-MailboxDatabase -Recovery -Name
RDBName musi być unikalną nazwą bazy do odzyskiwania.
Dokładne polecenie w naszym przypadku to:
NewMailboxDatabase -Recovery -Name RDB01 -Server Win2019 -EdbFilePath D:DBrecoveryDB01DB01.edb -LogFolderPath D:DBrecoveryDB01
- Należy ponownie uruchomić usługę
Exchange Information Store:
Restart-Service MSExchangeIS
Alternatywnie, przejdź do services.msc z wiersza poleceń i ponownie uruchom usługę Microsoft Exchange Information Store w oknie GUI konsoli usług Microsoft.
- Zamontuj bazę danych odzyskiwania:
Mount-database RDB01
- Sprawdź, czy baza danych odzyskiwania zawiera jakiekolwiek dane:
Get-MailboxStatistics -Database RDB01 | Format-Table DisplayName,MailboxGUID -AutoSize
Wynik wyświetla nazwę i identyfikator skrzynki pocztowej, które są potrzebne do przeniesienia odzyskanej wiadomości e-mail do innej skrzynki pocztowej.
Inny sposób sprawdzania skrzynek pocztowych w bazie odzyskiwania Exchange:
Get-MailboxStatistics -Database RDB01 | ft -AutoSize
- Na przykład musimy przeprowadzić odzyskiwanie skrzynki pocztowej Microsoft Exchange o identyfikatorze:
8aa77cb3-dc38-1f37-72e5-55702e737f52
Polecenie przywracania skrzynki pocztowej z bazy odzyskiwania wygląda następująco. Należy określić bazę źródłową (bazę odzyskiwania), identyfikator skrzynki pocztowej w bazie odzyskiwania oraz bazę docelową.
New-MailboxRestoreRequest -SourceDatabase RDB01 -SourceStoreMailbox 8aa77cb3-dc38-1f37-72e5-55702e737f52 -TargetMailbox DB01
Jeśli pojawi się komunikat o błędzie:
Source mailbox legacuexchangedn doesn’t match
, dodaj na końcu polecenia: -AllowLegacyDNMismatchNew-MailboxRestoreRequest -SourceDatabase RDB01 -SourceStoreMailbox 8aa77cb3-dc38-1f37-72e5-55702e737f52 -TargetMailbox DB01 -AllowLegacyDNMismatch
Uwaga: Innym sposobem odzyskania skrzynki pocztowej jest podanie jej nazwy, na przykład: user1:
New-MailboxRestoreRequest -Name "User Mailbox Recovery" -SourceDatabase RDB01 - SourceStoreMailbox "user1" -TargetMailbox "user1"
- Po zakończeniu odzyskiwania skrzynki pocztowej Exchange można usunąć żądanie przywrócenia skrzynki:
Get-MailboxRestoreRequest | where status -eq completed | Remove-MailboxRestoreRequest
- Następnie można odmontować bazę danych odzyskiwania:
Dismount-Database RDB01
Spróbuj uzyskać dostęp do odzyskanej skrzynki pocztowej za pośrednictwem Outlooka na sieci Web i sprawdź, czy wszystkie potrzebne dane zostały odzyskane dla użytkownika.
Twarde odzyskiwanie bazy danych Exchange
Opisana powyżej metoda odzyskiwania bazy danych Exchange stanowiła przykład odzyskiwania miękkiego. Odzyskiwanie miękkie ma zastosowanie, gdy plik bazy danych nie jest uszkodzony, a dzienniki transakcji bazy danych są obecne. Jeśli warunki te nie są spełnione, inną metodą odzyskiwania danych Exchange jest odzyskiwanie twarde (jeśli nie masz kopii zapasowej serwera Exchange). Twarde odzyskiwanie powoduje usunięcie wszystkich uszkodzonych danych z bazy danych serwera Exchange w celu zapewnienia spójności stanu bazy danych.
- Napraw uszkodzoną bazę danych. Użyj tego polecenia, jeśli brakuje dzienników transakcji bazy danych Exchange:
eseutil /p E:DB01DB01.edb

Wyświetlany jest komunikat ostrzegawczy:

Procesu tego nie można cofnąć, a po jego zakończeniu może dojść do utraty niektórych danych.
Kliknij OK , aby kontynuować, i poczekaj, aż proces się zakończy.
- Sprawdź, czy baza danych znajduje się w stanie
Clean Shutdown:
eseutil /mh E:DB01DB01.edb
- Po naprawie zdefragmentuj bazę danych, ponieważ usunięcie dużych fragmentów uszkodzonych danych z bazy danych powoduje spadek wydajności bazy danych:
eseutil /d E:DB01DB01.edb
Zostanie utworzona nowa baza danych, a wszystkie spójne (prawidłowe) dane ze starej bazy danych, którą naprawiliśmy, zostaną przeniesione do nowej bazy danych.
- Zamontuj zdefragmentowaną bazę danych:
Mount-Database E:DB01DB01.edb
- Sprawdź tę bazę danych za pomocą polecenia, aby upewnić się, że nie ma żadnych problemów:
Get-MailboxRepairRequest -Database E:DB01DB01.edb
Odzyskiwanie bazy danych Exchange dla uszkodzonej bazy danych zostało zakończone.
Odzyskiwanie danych Exchange za pomocą NAKIVO
NAKIVO Backup & Replication to rozwiązanie do ochrony danych, które obsługuje odzyskiwanie danych Exchange z fizycznej lub wirtualnej kopii zapasowej. Można odzyskać określone obiekty serwera Exchange, takie jak skrzynki pocztowe i wiadomości e-mail, a także przeprowadzić pełne odzyskiwanie bazy danych Exchange. Proces odzyskiwania składa się z kilku kroków wykonywanych w interfejsie internetowym produktu.
Na głównym pulpicie nawigacyjnym kliknij Jobs > Recover > Microsoft Exchange objects , aby rozpocząć proces odzyskiwania serwera Exchange. 
Postępuj zgodnie z instrukcjami zawartymi na stronie Object Recovery Wizard.
- Wybierz kopię zapasową i punkt odzyskiwania. Elastyczna polityka przechowywania danych pozwala na odzyskiwanie elementów z różnych przedziałów czasowych.
- Wybierz serwer odzyskiwania. Wybierz komputer, na którym pierwotnie zainstalowano Microsoft Exchange Server, lub inny komputer, na który chcesz odzyskać dane serwera Exchange.
Uwaga: Aby odzyskać konkretne e-maile i pobrać je jako PST pliki za pośrednictwem przeglądarki internetowej, należy ustawić parametr system.exchange.enable.direct.recovery na stronie ustawień zaawansowanych, dostępnej pod adresami takimi jak
https://localhost:4443/c/configuration?expert or
https://localhost:4443/c/configuration?action=&targetId=&backUrl=&wizard=false&expert
- Wybierz obiekty Exchange do odzyskiwania. Możesz odzyskać całą bazę danych
.edblub wybrać konkretne skrzynki pocztowe i wiadomości e-mail. Dla większej wygody możesz również wyszukiwać potrzebne obiekty serwera Exchange.
- Wybierz opcje odzyskiwania, takie jak typ odzyskiwania i zachowanie podczas nadpisywania:
- Odzyskaj do pierwotnej lokalizacji – wybrane obiekty są odzyskiwane do pierwotnych lokalizacji na serwerze lub maszynie wirtualnej.
- Przywróć do lokalizacji niestandardowej – pozwala wybrać maszynę i określić ścieżkę, do której mają zostać przywrócone obiekty.
- Eksportuj do lokalizacji niestandardowej – pozwala wyeksportować wybrane obiekty Exchange, w tym całą skrzynkę pocztową, do folderu lokalnego lub udziału CIFS (SMB).
Zachowanie podczas nadpisywania określa, co zrobić, jeśli element już istnieje:
- Zmień nazwę przywróconego elementu
- Pomiń przywrócony element
- Nadpisz oryginalny element
- Poczekaj, aż Odzyskiwanie danych Exchange zostanie zakończone.
Wnioski
Najlepszą metodą odzyskiwania danych z serwera Exchange jest przywrócenie z kopii zapasowej przy użyciu profesjonalnego i kompleksowego rozwiązania do ochrony danych. Za pomocą oprogramowania NAKIVO Backup & Replication można tworzyć spójne kopie zapasowe serwera Exchange działającego na maszynie fizycznej lub wirtualnej, korzystając z szerokiej gamy elastycznych opcji natychmiastowego odzyskiwania. Produkt obsługuje również odzyskiwanie obiektów usługi Active Directory które mogą być potrzebne do prawidłowego działania serwera Exchange.






















