Défragmenter la base de données des boîtes aux lettres Exchange en utilisant Eseutil /d PowerShell
Résumé: La défragmentation de la base de données Exchange supprime les fragments et organise les données ou les informations dans un ordre continu, ce qui permet de garantir la santé de la base de données et d'améliorer les performances de lecture. Elle réduit également la taille de la base de données en supprimant l'"espace blanc", ce qui permet de réduire la taille de la base de données et d'économiser de l'espace sur le disque. Dans ce blog, nous avons partagé les étapes pour défragmenter et optimiser la base de données de la boîte aux lettres Exchange en utilisant les cmdlets PowerShell.
Dans Microsoft Exchange Server, la taille de la base de données augmente au fur et à mesure que des boîtes aux lettres sont créées et que des données sont générées par les utilisateurs lorsqu’ils envoient/reçoivent des courriels.
Lorsque certains courriers sont supprimés des boîtes aux lettres ou que des boîtes aux lettres sont supprimées des bases de données Exchange, l’espace de stockage libre laissé par les courriers supprimés n’est pas récupéré.
Par exemple, si la taille de la base de données est de 10 Go et que vous supprimez une boîte aux lettres de ~2 Go, la base de données restera de 10 Go. L’espace de 2 Go laissé par la boîte aux lettres supprimée est appelé “espace blanc“.
Il est donc important de récupérer l’espace blanc en défragmentant la base de données Exchange. Cela réduira la taille de la base de données et aidera à prévenir les problèmes de corruption de la base de données causés par un stockage faible ou inexistant.
Pourquoi défragmenter la base de données de la boîte aux lettres Exchange ?
La défragmentation est un processus qui consiste à nettoyer tout le stockage inutilisé ou à récupérer l’espace blanc de la base de données, à supprimer les fragments de données et à organiser les informations dans les régions contiguës pour un accès rapide.
Du point de vue des performances, la défragmentation (Eseutil /d) accélère l’accès à la base de données car le serveur Exchange n’a pas besoin de traiter un fichier volumineux en mémoire ou d’ouvrir et de rechercher le fichier, ce qui peut entraîner un grand nombre d’entrées/sorties du stockage pour rien.
Un autre élément est le fonctionnement du serveur. Comme vous le savez peut-être, Exchange Server est sensible à la santé de la base de données s’il n’y a pas de stockage ou s’il y a un manque de stockage.
Les bases de données ont tendance à remplir le disque dur avec de l’espace inutilisé ou des fichiers journaux. Si l’espace de stockage n’est pas augmenté ou si les journaux ne sont pas purgés, la base de données risque d’être endommagée et de se corrompre. En conséquence, la base de données Exchange se démonte, ce qui rompt la connectivité client-serveur et empêche les utilisateurs d’envoyer ou de recevoir des courriers électroniques.
Il serait donc judicieux de programmer une vérification périodique de l’état de la base de données, en fonction de la taille et du nombre d’utilisateurs. Une base de données corrompue peut entraîner une perte de données, de services et d’activités.
Ce qu’il faut savoir avant de défragmenter la base de données des boîtes aux lettres Exchange à l’aide d’Eseutil /d
Avant d’exécuter la commande Eseutil /d pour défragmenter la base de données Exchange, vérifiez les points suivants :
- Pour défragmenter une base de données Exchange Server, celle-ci doit être démontée. Malheureusement, cela signifie que les utilisateurs ne pourront pas accéder à leurs boîtes aux lettres pendant cette opération.
- La défragmentation de la base de données Exchange ne doit être exécutée qu’après les heures de bureau, car elle peut prendre un certain temps (en fonction de la taille de la base de données et du serveur/stockage).
- Il est fortement recommandé de sauvegarder la base de données avant la défragmentation pour ces scénarios “juste au cas où”.
- Assurez-vous que le disque sur lequel la base de données est stockée dispose d’un espace de stockage libre suffisant, équivalent ou supérieur à la taille de la base de données (de préférence 1,1x ou 1,2x la taille de la base de données). Si vous manquez d’espace de stockage, cela pourrait poser un problème.
Pour calculer l’espace nécessaire, vous devez vérifier la taille de la base de données de votre serveur Exchange qui nécessite une défragmentation. Pour ce faire, vous pouvez utiliser la cmdlet PowerShell Get-MailboxDatabase, comme indiqué ci-dessous.
Get-MailboxDatabase -Status | ft name, database size, availablablenewmailboxspace -auto
La sortie affichera le nom de la base de données, la taille de la base de données et l’espace de la nouvelle boîte aux lettres disponible.
Comme vous pouvez le voir dans l’exemple ci-dessus, la taille de la base de données de la boîte aux lettres 0954395982 est de 247,9 Mo.
D’autre part, elle dispose également de 74,34 Mo d’espace blanc. Bien sûr, il s’agit d’une petite base de données avec quelques boîtes aux lettres. Mais pour les bases de données plus importantes, la défragmentation (Eseutil /d) améliorera considérablement les performances des disques et le fonctionnement du serveur.
Vous pouvez utiliser les formules suivantes pour calculer l’espace libre total requis pour défragmenter la base de données des boîtes aux lettres Exchange.
- (DatabaseSize) – (AvailableNewMailboxSpace) = (Taille réelle de la base de données).
- (Taille réelle de la base de données) X 1,1= (Espace requis pour la défragmentation).
250 MB – 75 MB = 175 MB
175 Mo X 1,1 = 192,5 Mo – c’est l’espace libre minimum requis pour défragmenter la base de données des boîtes aux lettres Exchange.
NOTE : Nous avons arrondi 247,9MB à 250MB dans les calculs ci-dessus.
Étapes pour défragmenter la base de données des boîtes aux lettres Exchange à l’aide de la cmdlet Eseutil /d
Pour défragmenter et optimiser une base de données de boîtes aux lettres Exchange, procédez comme suit :
Étape 1 : Lancer Exchange Management Shell (EMS).
Étape 2 : Accédez à l’emplacement du dossier où se trouve la base de données à défragmenter à l’aide de la commande cd. Par exemple,
cd "C:\NProgram Files\NMicrosoft\NExchange Server\NV15\NMailbox\NMailbox Database 0954395982"
Étape 3 : Exécutez la commande suivante pour démonter la base de données de la boîte aux lettres Exchange.
Démonter la base de données <nom de la base de données>
Étape 4 : Une fois la base de données démontée, utilisez la commande suivante EseUtil ci-dessous command pour lancer le processus de défragmentation.
Eseutil /d "Base de données de la boîte aux lettres 0954395982.edb" /t "temp_0954395982.edb".
Étape 5 : Après la défragmentation (qui peut prendre du temps en fonction des performances du serveur/stockage et de la taille de la base de données), remontez la base de données à l’aide de la cmdlet PowerShell Mount-Database.
Mount-Database "Base de données de la boîte aux lettres 0954395982"
Étape 6 : Après avoir monté la base de données et testé la connectivité des utilisateurs concernés, vous pouvez tester la défragmentation de la base de données en revérifiant sa taille à l’aide de la cmdlet PowerShell Get-MaiboxDatabase.
Get-MailboxDatabase -Status | ft name, databasesize, availablablenewmailboxspace -auto
Vous pouvez voir ici que la taille de la base de données est passée de 247,9 Mo à 56 Mo, avec seulement 512 Ko d’espace blanc.
En conclusion
Tout va bien avec l’opération de défragmentation si vous n’avez pas rencontré de problème ou de message d’erreur au cours de l’opération. Cependant, plusieurs facteurs peuvent corrompre la base de données avant et pendant le processus de défragmentation (Eseutil /d). Par exemple, si vous n’avez pas calculé l’espace libre ou laissé suffisamment d’espace pour que le processus s’exécute, cela peut conduire à un stockage faible ou plein qui arrêtera le serveur et corrompra la base de données.
Dans de telles situations, pour tout administrateur Exchange, un outil de récupération Exchange tiers tel que Stellar Repair for Exchange s’avère très utile pour sauver la base de données en cas de sinistre. Avec Stellar Repair for Exchange, vous pouvez réparer n’importe quelle base de données Exchange corrompue ou endommagée, quelle que soit la version, et récupérer les données au format PST ou dans d’autres formats. Avec ce logiciel, vous pouvez également exporter directement les boîtes aux lettres de la base de données Exchange réparée vers une base de données en direct dans votre serveur Exchange et un locataire Microsoft 365.