Exchange Migration: Postfächer alphabetisch auf Datenbanken aufteilen

Bei der Migration von Exchange 2010 zu Exchange 2013 bietet es sich an die Postfächer alphabetisch auf die neuen Exchange 2013 Datenbanken aufzuteilen. Ich habe daher ein Script erstellt, welches alle Postfächer einer Quelldatenbank, nach dem ersten Anfangsbuchstabens des Namens auf die Zieldatenbanken aufteilt:

param
(
[string]$Database
,
[string]$Defaultdatabase
,
[bool]$CreateMoveRequest
)

write-host “

Verarbeite Postfächer in Datenbank $database
—————————————————
“ -foregroundcolor green

if ($CreateMoveRequest)
{
write-host “ Postfächer werden verschoben und angezeigt!“ -foregroundcolor yellow
write-host „“

}
else
{
write-host “ Postfächer werden nicht verschoben, nur angezeigt.“ -foregroundcolor green
write-host „“
}

$mailboxlist = Get-Mailbox -database $database -ResultSize unlimited
foreach ($mailbox in $mailboxlist)
{
$displayname = $mailbox.Displayname
switch -Regex ($displayname.substring(0,1))
{
„[A-C]“ {$mailboxdatabase = „A-C-Datenbank“}
„[D-F]“ {$mailboxdatabase = „D-F-Datenbank“}
„[G-J]“ {$mailboxdatabase = „G-J-Datenbank“}
„[K-L]“ {$mailboxdatabase = „K-L-Datenbank“}
„[M-O]“ {$mailboxdatabase = „M-O-Datenbank“}
„[S]“ {$mailboxdatabase = „S-Datenbank“}
„[T-Z]“ {$mailboxdatabase = „T-Z-Datenbank“}
default {$mailboxdatabase = „$defaultdatabase“}
}

$currentmbxdatabase = $mailbox.database.name
if ($currentmbxdatabase -ne $mailboxdatabase)
{
if ($CreateMoveRequest)
{
$move = New-MoveRequest -Identity $mailbox -TargetDatabase $mailboxdatabase
}
Write-Host „$displayname wird in Datenbank $mailboxdatabase verschoben“
}

}
write-host „“

 

Die Syntax ist dabei wie folgt (Script oben in move-mailboxes.ps1 speichern):

move-mailboxes –database <Name der Quelldatenbank> –defaultdatabase <Name der Datenbank Default Datenbank> –createmoverequest $true

-Database gibt die Quelldatenbank an

-DefaultDatabase gibt eine Standarddatenbank an, wenn keine Übereinstimmung gefunden wird, wenn zum Beispiel der Name mit einer Zahl geginnt

-createMoveRequest $true erzeugt direkt die entsprechenden Verschiebeanforderungen, $false zeigt nur an in welche Datenbank das Postfach verschoben wird, erstellt aber noch keine Verschiebeanforderung.

2 Gedanken zu „Exchange Migration: Postfächer alphabetisch auf Datenbanken aufteilen“

Schreibe einen Kommentar