Solved

PowerShell for moving mailbox

Posted on 2013-02-02
3
517 Views
Last Modified: 2013-02-07
We have a standard Storge Group with 2 different mailbox storage.

Is it possible to write a powershell to automate

1. Create a Temporary Storage Group
2. Move each mailbox storage to the Temporary Storage
3. Remove the old Standard Storage Group and Recreate a new one
4. Move each mailbox storage back to Standard storage Group
5.  Remove the Temporary Storage Group.

When we remove the Storage Group, do we need to stop the Information Storage ? Is it possbiel to automate the process ?

Tks

5.
0
Comment
Question by:AXISHK
  • 2
3 Comments
 
LVL 5

Accepted Solution

by:
coraxal earned 500 total points
ID: 38848106
I'm sure you have your reasons for deleting the standard SG. Also, I think in steps 2 & 4 you mean "Mailbox databases" instead of "Mailbox storage".  In any event, the script you're trying to get would look something like this: (note: this is script is untested and you should test it in a test environment before running in production)
# Create a Temporary Storage Group
$LogFolderPath = "D:\Mailbox\Temporary Storage Group"
$SystemFolderPath = "D:\Mailbox\Temporary Storage Group"
$TmpStorageGroupName = "TemporaryStorageGroup"
New-StorageGroup -Name $TmpStorageGroupName -Server "ExchangeServer1" -LogFolderPath:$LogFolderPath -SystemFolderPath:$SystemFolderPath

# Dismount existing databases
$CurrentMailboxDatabases = "MailboxDB1","MailboxDB2"
foreach ($MailboxDatabase in $CurrentMailboxDatabases)
{
	Dismount-MailboxDatabase -Identity $MailboxDatabase -Confirm:$false
}

# Move existing databases to temporary SG
foreach ($MailboxDatabase in $CurrentMailboxDatabases)
{
	Move-DatabasePath -Identity $MailboxDatabase -EdbFilePath $("D:\Mailbox\Temporary Storage Group\$MailboxDatabase" + ".edb") -Confirm:$false
}

# Remove current standard Storage Group
$StorageGroup = "StandardStorageGroup"
Remove-StorageGroup -Identity $StorageGroup -Confirm:$false

# Create new standard Storage Group
$LogFolderPath = "D:\Mailbox\Standard Storage Group"
$SystemFolderPath = "D:\Mailbox\Standard Storage Group"
New-StorageGroup -Name $StorageGroup -Server "ExchangeServer1" -LogFolderPath:$LogFolderPath -SystemFolderPath:$SystemFolderPath

# Move existing databases to new standard SG
foreach ($MailboxDatabase in $CurrentMailboxDatabases)
{
	Move-DatabasePath -Identity $MailboxDatabase -EdbFilePath $("D:\Mailbox\Standard Storage Group\$MailboxDatabase" + ".edb") -Confirm:$false
}

# Mount existing databases
foreach ($MailboxDatabase in $CurrentMailboxDatabases)
{
	Mount-MailboxDatabase -Identity $MailboxDatabase -Confirm:$false
}

Open in new window

0
 
LVL 5

Expert Comment

by:coraxal
ID: 38848109
Sorry, forgot to answer you question about stopping services.  You do not need to stop any services including the Information Store service when removing a storage group
0
 

Author Closing Comment

by:AXISHK
ID: 38866465
Tks
0

Featured Post

Does Powershell have you tied up in knots?

Managing Active Directory does not always have to be complicated.  If you are spending more time trying instead of doing, then it's time to look at something else. For nearly 20 years, AD admins around the world have used one tool for day-to-day AD management: Hyena. Discover why

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Lotus Notes – formerly IBM Notes – is an email client application, while IBM Domino (earlier Lotus Domino) is an email server. The client possesses a set of features that are even more advanced as compared to that of Outlook. Likewise, IBM Domino is…
This article explains how to install and use the NTBackup utility that comes with Windows Server.
In this video we show how to create an Address List in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.: First we need to log into the Exchange Admin Center. Navigate to the Organization >> Ad…
To show how to generate a certificate request in Exchange 2013. We show this process by using the Exchange Admin Center. Log into Exchange Admin Center.:  First we need to log into the Exchange Admin Center. Navigate to the Servers >> Certificates…

840 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question