Exchange : ajouter une base de données en PowerShell


Exchange 2013 Exchange 2016 Exchange 2019

Dans ce tutoriel, je vais vous expliquer comment ajouter une base de données sur un serveur Exchange en PowerShell.

L’utilisation de PowerShell permet de gagner du temps car plusieurs manipulations sont à faire, entrer passer par l’ECP puis sur la liste des services pour redémarrer un service pour la prise en compte.

Ajouter une base de données à Exchange en PowerShell

Voici un aperçu de mon environnement Exchange, ci-dessous la liste des bases de données.

Dans ce tutoriel, je vais créer la base de données MXDB600, qui sera stocké sur le lecteur E de mon serveur dans un dossier dédié et les logs seront sur un autre lecteur L également dans un dossier dédié.

Ouvrir la console EMS (Exchange Management Shell) en tant qu’administrateur.

La console EMS est ouverte.

C’est une fenêtre PowerShell avec les modules Exchange de charger et la connexion établie sur le serveur.

On va maintenant passer à la création de la base de données avec la Cmdlet New-MailboxDatabase, à laquelle nous allons devoir lui donner plusieurs paramètres :

  • Server : le serveur Exchange où l’on souhaite créer la base de données
  • Name : nom de la base de données
  • EdbFilePath : nom et emplacement du fichier edb, qui est le fichier de base de données
  • LogFolderPath : emplacement des logs de la base de données

Ce qui donne :

New-MailboxDatabase -Server S-EX-2016-1 -Name "MXDB600" -Edbfilepath E:\MXDB600\MXDB600.edb -LogFolderPath L:\MXDB600

Le retour de la commande affiche l’état de la base de données et un message nous indique qu’il faut redémarrer le service Microsoft Exchange Information Store.

Redémarrer le service avec la commande ci-dessous :

Restart-Service MSExchangeIS

Si on retourne dans l’interface Web (ECP), on va bien notre base de données, pour le moment celle-ci n’est pas montée.

On peut voir dans l’explorateur de fichiers que les dossiers et fichiers ont été créés.

Pour savoir si la base de données est montées dans Exchange, on peut utiliser cette commande :

Get-MailboxDatabase -Status | Sort Name | Format-Table Name, Server, Mounted

Pour monter la base de données, on utilise la Cmdlet Mount-Database en indiquant en paramètre le nom de la base données :

Mount-Database MXDB600

La commande n’a pas de retour, il est possible de vérifier le statut avec la commande que l’on a vu précédemment.

Vous savez maintenant, comment ajouter une base de données dans Exchange avec PowerShell.

En fonction des environnements, la base de données peut être montée dès sa création.

Pour résumé :

Ajouter la base de donnée à un DAG en PowerShell

Si votre environnement est configuré avec un DAG (Database Availability Group), on va voir comment ajouter la base de données dedans.

Pour ajouter la base de données au DAG, on va utiliser la Cmdlet Add-MailboxDatabaseCopy en indiquant la base de données, le serveur qui va recevoir la copie et l’ordre d’activation.

Pour ajouter la base créée précédemment :

Add-MailboxDatabaseCopy -Identity MXDB600 -MailboxServer S-EX-2016-2 -ActivationPreference 2

Une fois la commande validée, patienter pendant la copie de la base de données Exchange.

Une fois la copie terminée, un message s’affiche indiquant de redémarrer le service Microsoft Exchange Information Store, sur le serveur qui a reçu la copie.

Si vous avez lancer la commande depuis un serveur distant (celui où la base de données a été créée), utiliser cette commande pour redémarrer le service à distance

Get-Service MSExchangeIS -ComputerName S-EX-2016-2 | Restart-Service

La base de données est ajoutée au DAG, on peut aussi le vérifié dans l’ECP.