Something very interesting happened the other day when I decided to use the Move-Mailbox cmdlet in Exchange 2007 to move about 350 mailboxes from one storage group to another. I ran the following command first:
Get-Mailbox -Database mailsrvr\SG07\SG07-DB01 -ResultSize unlimited Move-Mailbox -TargetDatabase mailsrvr\SG01\SG01-DB01 -MaxThreads 15 -PreserveMailboxSizeLimit -ReportFile C:\MoveResultAll.txt
It just took forever to move mailboxes. Note that I used 15 threads to move mailboxes thinking that it would move 15 mailboxes at once. The size of mailboxes on average was 150-200 MB. I was expecting this to finish within 3-4 hours. I finally decided to cancel the task and started to investigate as to why it took this long for these to move. I finally came to the conclusion that it was because some the large mailboxes took forever to move and caused bottle neck for other many smaller mailboxes. But I was kind of surprised because my own mailbox is nearly 800 MB and it took 10 minutes to move. I mean we have a pretty heavy duty Exchange server. So next day I tried the following script to larger mailboxes will be moved first and then all smaller ones.
Get-MailboxStatistics -Database mailsrvr\SG08\SG08-DB01 Sort-Object TotalItemSize Move-Mailbox -TargetDatabase mailsrvr\SG10\SG10-DB01 -MaxThreads 30 -PreserveMailboxSizeLimit -ReportFile C:\MoveResult_All.txt
It still took forever and after 2 hours it had moved only 15 mailboxes. Note that this time I even used 30 threads to move mailboxes.
I finally decided to move mailboxes using Move mailbox wizard. You an use up to five mailboxes at a time with default of 5 threads and with 10 wizard windows open.
This turned out to be very fast as I was move 50 mailboxes on an average of 30 minutes.
I am surprised that there was too much delay when using PowerShell to move mailboxes on the same server on Exchange 2007. I used same commands to move mailboxes from Exchange 2000 to Exchange 2007 during the migration. However, there I was using multiple shell window to run Move-Mailbox cmdlet using different OUs.
BE83CD86
ReplyDeleteÇanakkale
Ağrı
Antep
Kırıkkale
Afyon
Kırklareli
Amasya
Trabzon
Uşak
31A1D0DA
ReplyDeleteAyaş
Soma
Akhisar
Elmadağ
Kartepe
Nusaybin
Girne
Çorlu
Çubuk
C517F1D2
ReplyDeleteSivrihisar
Demetevler
Gürcistan
Viranşehir
Soma
Turgutreis
Burhaniye
Erdemli
Lapseki
8CD963BE
ReplyDeleteKumluca
Tarsus
Fatsa
Sapanca
Bağlar
Bayraklı
Hopa
Hendek
Mut