Come controllare lo stato di salute del database di Exchange?
Riassunto: Il controllo dello stato di salute del database di Exchange è importante per garantire che il database di Exchange Server sia sano e montato in ogni momento. Ma per qualche motivo, se il database si smonta o non si monta, si possono verificare dei tempi di inattività. In questa guida abbiamo descritto i passaggi per verificare lo stato di salute del database di Exchange e per ripristinarlo in caso di problemi.
Il monitoraggio di Exchange Server è uno dei compiti più critici che gli amministratori devono svolgere ogni giorno per garantire che i servizi di posta elettronica siano attivi e funzionanti. Un database di Exchange corrotto o incoerente può causare tempi di inattività. Può interrompere i servizi di posta elettronica e impedire agli utenti di accedere alle proprie caselle di posta elettronica o di inviare o ricevere nuove e-mail.
Per evitare questo scenario, Microsoft Exchange Server richiede una manutenzione e dei test periodici per garantire che il server e i suoi componenti, compreso il database, rimangano sani e aggiornati.
In questo post, discuteremo i passaggi per verificare lo stato di salute dei database di Exchange.
Passi per verificare lo stato di salute del database di Exchange
Seguite i passaggi seguenti per verificare lo stato di salute del database e ripristinare i servizi di Exchange e il database, in caso di problemi.
Passo 1: controllare i servizi di Exchange
Se nella vostra organizzazione si verificano interruzioni che impediscono agli utenti di connettersi o di accedere alle proprie caselle di posta, la causa potrebbe essere un database danneggiato o corrotto. Tuttavia, prima di giungere a qualsiasi conclusione, sarebbe meglio verificare che tutti i servizi di Microsoft Exchange sul server Exchange siano attivi e funzionanti. Per farlo, è necessario aprire l’applicazione Servizi sul server Exchange. I passaggi sono i seguenti:
- Premere i tasti Windows + R sulla tastiera, digitare services.msc e premere il tasto Invio o fare clic su OK.
- Controllare i servizi di Microsoft Exchange e assicurarsi che i servizi richiesti del server Exchange siano attivi, insieme ad altri servizi dipendenti.
In alternativa, è possibile utilizzare il seguente cmdlet PowerShell. In questo modo si ottiene una panoramica completa dello stato dei servizi di Exchange.
Test-ServiceHealth
Passo 2: Controllare lo stato del database
Se non ci sono reclami da parte degli utenti, non significa che tutto vada bene. Dopo essersi assicurati che i servizi di Exchange siano in funzione, verificare che i database siano montati. Il database in cui sono memorizzati gli archivi potrebbe essere inattivo. Per verificarlo, è possibile utilizzare Exchange Admin Center (EAC). La procedura è la seguente:
- Aprire l’Exchange Admin Center (EAC) navigando sul server Exchange e aggiungendo /ECP alla fine dell’URL.
https://ex01/ecp
- Accedere con le credenziali dell’amministratore e fare clic sulla sezione Server nel pannello di sinistra.
- Fare clic su database.
- Assicurarsi che lo stato dei database sia visualizzato come montato.
In alternativa, è possibile utilizzare PowerShell per verificare lo stato del database. Eseguite il cmdlet Get-MailboxDatabase come indicato di seguito.
Get-MailboxDatabase -Status | Format-List nome,server,montato
Con questo semplice comando è possibile vedere tutti i database e il loro stato di montaggio. Se lo stato del database ‘Montato‘ è ‘Falso‘, indica un problema. È possibile provare a montare il database di Exchange utilizzando il seguente cmdlet di PowerShell.
Monta il database -Identità DB2
Se il database non viene montato, potrebbero esserci dei problemi che richiedono ulteriori indagini.
Fase 3: Riparazione del database
È possibile utilizzare il comando ESEUtil Comando per identificare la possibile causa del problema e due opzioni di ripristino: Soft Recovery e Hard Recovery. Innanzitutto, è necessario confermare lo stato del database. È possibile utilizzare il parametro /mh per conoscere lo stato del database.
Se lo stato viene visualizzato come Arresto sporco, significa che il database o i registri sono corrotti o che un registro è mancante (non impegnato). In questo caso, è possibile eseguire un Soft Recovery eseguendo il comando ESEUtil con il parametro /r.
EseUtil /r E00 /l C:\EDB /d C:\EDB\db2.edb
A seconda delle dimensioni del database, questa operazione potrebbe richiedere del tempo. Se il Soft Recovery è riuscito, si può provare a montare il database. Se viene montato, eseguire un backup del database per verificare che tutto sia a posto.
Se non si riesce, potrebbe essere necessario eseguire ESEUTIL /P Hard Recovery. Tuttavia, si consiglia di evitare il Recupero dati poiché può comportare la perdita di dati. Il ripristino rigido elimina tutti i dati ritenuti corrotti. Inoltre, dopo il ripristino rigido, il database è codificato in modo rigido e Microsoft non fornirà alcun supporto in caso di problemi. Inoltre, non è garantito che il database venga montato dopo questo processo.
Dopo il ripristino, si consiglia di eseguire la deframmentazione del database. Si noti che il database non verrà montato durante questo processo. Il processo di deframmentazione rimuoverà tutti gli spazi bianchi per migliorare le prestazioni del database. Prima di eseguire il processo di deframmentazione, è bene vedere lo stato, la dimensione e lo spazio libero del database. Questo può essere fatto eseguendo Get-MailboxDatabase con alcuni parametri.
Get-MailboxDatabase -Status | ft nome, databasesize, availablenewmailboxspace -auto
Qui si può vedere che DB3 ha una dimensione di 247 MB, con 118 MB di spazio libero. È quindi necessario eseguire la deframmentazione per liberare lo spazio. Per eseguire il processo di deframmentazione, è meglio disporre di un ampio spazio di archiviazione, poiché verrà creato un nuovo file EDB su cui lavorare. Per deframmentare un database, è necessario utilizzare ESEUtil con il parametro /d, come indicato di seguito.
Eseutil /d "DB3.edb" /t "temp_db3.edb".
In questo modo si deframmenta il database. Dopodiché, è possibile eseguire nuovamente Get-MailboxDatabase per vedere il database ridotto.
Conclusione
In questo post abbiamo condiviso i passaggi per verificare lo stato di salute dei database di Exchange. Tuttavia, in una configurazione di grandi dimensioni, si consiglia vivamente di disporre di un sistema di monitoraggio con avvisi che controllino costantemente lo stato di Exchange Server, dei suoi servizi e dei database, oltre che della CPU, dello storage e di altre risorse.
Se qualcosa si guasta, si finisce per dover affrontare un enorme sforzo amministrativo per recuperare i dati o si finisce per perdere i dati, poiché è necessario ripristinare dal backup del giorno precedente. Tuttavia, è possibile ridurre l’impegno amministrativo e le risorse utilizzando il software Stellar Repair for Exchange, in grado di aprire qualsiasi versione del database di Exchange Server, sano o meno. Utilizzando il software, è possibile riparare ed esportare le caselle di posta elettronica dal database in PST e altri formati. È anche possibile esportare direttamente in un nuovo database Exchange live o in un tenant Microsoft 365. Il software è facile da usare, veloce e in grado di ridurre al minimo i tempi di inattività e gli sforzi.