Transition from Exchange 2003 to Exchange 2007 : Moving the Public Folders, Mailboxes & OAB Part-3

In the last two parts we have covered different method of upgrading Exchange 2003 to Exchange 2007 & installaion of Exchange 2007. In this article we will concentrate on moving of public folder database, mailboxes and OAB.
Note : Please look into the last two parts of the transition from Exchange 2003 to Exchange 2007 before you could get into this article (Only for those people who have not seen those two articles) because then only you people will come to know about the environment topology what I have and what is the scope of this transition.

Transition from Exchange 2003 to Exchange 2007 : Upgrading Exchange 2003 to Exchange 2007 Part-1
http://exchangeserverinfo.com/2007/12/04/transition-from-exchange-2003-to-exchange-2007.aspx

Transition from Exchange 2003 to 2007: Installation of Exchange 2007-Part2
http://exchangeserverinfo.com/2007/12/04/transition-from-exchange-2003-to-2007-installation-of-exchange-2007part2.aspx

                                                    Moiving the Public Folders, Mailboxes & OAB Part-3

In my last two articles we have discussed about what are the transition we can choose for upgrading to Exchange2007 and installation of Exchange 2007. Now in this article we are focusing on mailbox movement, Public folder and OAB.
Once again I am reminding you all that it is purely lab setup concept which will give you base idea how to do transition from Exchange 2003 to Exchange 2007, in real time it might different based on the current topology we have. It is purely simple transition architecture.


                            Public Folders replication\moving the replica and deletion of public folder store
As you might know, Exchange 2007 no longer uses a Public Folder (or more specifically, a System Folder named SCHEDULE+ FREE BUSY in your Public Folder hierarchy) to store free/busy information for the mailbox users in the organization. Instead, free/busy information is stored directly in each user’s mailbox and retrieved using a new Web-based service called the Availability service. The advantage of this new approach is that there are no longer any 15-minute delays when free/busy time for a user is updated. Instead, the update happens
instantly.
Public Folder replication is not a big deal, the best way we can have is add the Exchange 2007 server as replica by going through Manage Setting (ESM => Folders => Public Folders => Transition (Public Folder Name) and add the 2007 server. See the Figure 1


In the above figure i have one public called as Transition and below that i have 4 sub-folders which i need to replicate.

Figure 2:


In the above figure 2 it is showing to add the replica option

Figure3:


In the above figure we need to select the option Add server to add Exchange 2007 server

Figure4:


Figure5



Once you are done with the replication process you can remove your source server from the public folder replica.
This replication is something like copy, paste and then remove the server from the replica tab.

There is another option where you can move the replica i.e cut and paste.

You can Move all Replica one at the same time:
• Open the Exchange System Manager
• Expand First Storage Group (Exchange 2003 Server)
• Right click public folder store
• Then select move all replica

You will see the below screen when you attempt to move all replica
Figure6:



Then you will get a warning message, click on ok

Figure7:


Once you are done you can confirm the same whether the replica has been moved to new server i.e simply go to Public Folder Instances of Exchange 2003 box in the details pane you should see that, it should be empty, thus how you can confirm that the replicas has been moved or not, if it has been moved then you can safely remove the public folder store.
Figure 8:





Deletion of Public Folder Store:
Right click public folder store and click on delete, It will give you a message
Figure9



It will ask you to select another PF store as a default one, assign role to system folder and OAB. When you click on OK it will display the pf server there you need to select 2k7 server and then hit OK
Figure10:


Then you will get a confirmation message for deleting press yes
Figure11


It will display the progress of the deletion of public store
Figure12



On your Exchange 2003 or Exchange 2000 server, perform the following steps to move the public folder hierarchy from the Exchange 2003 or Exchange 2000 administrative group to the Exchange 2007 administrative group:
1. In Exchange System Manager, expand Administrative Groups, right-click Exchange Administrative Group (FYDIBOHF23SPDLT), select New, and then select Public Folders Container.
2. Expand the Exchange 2003 or Exchange 2000 administrative group that contains the public folder tree, expand Folders, and then drag Public Folders to Folders under the Exchange 2007 administrative group.
Note : If you do not complete this step, the Exchange 2007 public folder database could fail to mount if you delete the Exchange 2003 or Exchange 2000 administrative group.

                                                                                Move Mailbox
For moving the mailbox between the servers which is located in the same organization you need to have the following permission:
• Exchange Recipient Administrator role
• Exchange Server Administrator role and local Administrators group for both the source and target servers

Quick Review regarding my database structure
3-Storage groups (in Exchange 2003)
 First Storage Group
 Executive
 Management
Total number of mailboxes: 18 Mailboxes

Created same storage groups in Exchange 2007



I have configured my outlook 2003 and even outlook 2007 as well so that we can see whether we will any sort of difference after moving the mailbox like recreating outlook profile.
In Exchange 2007, there are many way to move the mailbox based on your requirement.
The basic fundamental to the move the mailbox is you can do it from Exchange Management Console and if you have any special requirement while moving then you need to use Exchange Management Shell.
Lets have a walk through Exchange Management Console
1. Start the Exchange Management Console.
2. In the console tree, expand Recipient Configuration, and then click Mailbox.
3. In the result pane, click the mailbox or mailboxes that you want to move.
4. In the action pane, click Move Mailbox.
5. In the Move Mailbox Wizard, on the Introduction page, select the server, storage group, and mailbox database to where you want to move the mailbox, and then click Next.
6. On the Move Options page, select an option for handling corrupted messages in a mailbox, and then click Next.
7. On the Move Schedule page, specify when the move should occur, and then click Next.
8. On the Move Mailbox page, review the summary to confirm the mailbox moves, and then click Move.
9. On the Completion page, click Finish

Step by Step:
Right that appropriate user and select move mailbox



Select the target server and database


In the move option either you can select skip the mailbox if any corruption or skip the corruption upto certain number like 5



Move Schedule – You schedule a time for moving the mailbox or else you can start immediately (recommended time – off peak hours)


It display the information about source database (summary)


Now it will start to move the mailbox


Notes: If you select more then 4 mailboxes to move at the same time, it will start the session for 4 mailboxes per session.

In the background this are the activities carried which you can see at the time of movement:
• Open the source mailbox
• Prepared to move the mailbox
• Open the destination mailbox
• Then it move the message
• Finally it will close the session

Completion Summary and plus you will see the command for performing the same activity from powershell


Now you can see under Recipient Configuration the mailbox has been moved successfully – (See the difference in icon and recipient type details like for older version it will display as “Legacy Mailbox” and Mailbox which resides on Exchange 2007 – User Mailbox



After moving the mailbox you don’t require to reconfigure the profile it will automatically update the mailbox information when you open the outlook 2007 i.e it will resolve the mailbox name in the background.


                                                                For moving bulk of mailboxes to specific target


For moving bulk mailboxes you can use powershell with a script.
Note : This script is not supported under any Microsoft standard support program or service. The script is provided AS IS without warranty of any kind. Microsoft further disclaims all implied warranties including, without limitation, any implied warranties of merchantability or of fitness for a particular purpose. The entire risk arising out of the use or performance of the script and documentation remains with you. In no event shall Microsoft, its authors, or anyone else involved in the creation, production, or delivery of the script be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the script or documentation, even if Microsoft has been advised of the possibility of such damages.

In Exchange 2003 we have 4 mailboxes called as AVP, VP, CEO & President under Executive Storage group database and HR Mailbox on the Management Storage group of Exchange 2003 server.

Now I need to move the above 5 mailboxes to Executive storage group database. I can move by the method called as scripting.

Steps:
 1) Open a notepad and just type the alias name for the mailboxes which you need to move to the target database eg:
                 AVP
                 VP
                 President
                 HR
2) Then save it as “Users.txt” and location like c:\users.txt (In Exchange 2007 Server)
3) Then open another new notepad and copy the below code:

 

# 1. Login into destination Exchange 2007 Server

# 2. Set the database name in line $TargetDatabase = "Executive" where you want to move the mailboxes

# 3. Put the list of all user's alias into c:\users.txt file

# 4. Copy this file at C:\Program Files\Microsoft\Exchange Server\scripts with name Move-Mailboxes.ps1

# 5. Run the cmdlet from Exchange Power Shell

# 6. Once all mailboxes moves check the file c:\MoveLog.txt file for any error during movement

$TargetDatabase = "Mailbox Database"

$SourceFile = "c:\users.txt"

$a = remove-item c:\Movelog.txt -ea SilentlyContinue

$error.Clear()

$UserList = Get-Content $SourceFile

foreach($user in $UserList)

{

     $message = "Moving User -> " + $user

     write-output $message | out-file -filePath "c:\MoveLog.txt" -append -noClobber

     move-mailbox -Identity $user -TargetDatabase $TargetDatabase -BadItemLimit 5 -Confirm: $false

     if($error.Count -ne 0)

     {

           $message = "User " + $user + " failed to move ???????????"

           write-output $message | out-file -filePath "c:\MoveLog.txt" -append -noClobber

           $message = "Error:::: " + $error[0].ToString()

           write-output $message | out-file -filePath "c:\MoveLog.txt" -append -noClobber

           $error.Clear()

     }

}

 

In the above code you will see the location for target database : Executive that is what the location I have decided. If you want to move some other location then you can type “Mailbox Database” and save the above code called as  “movemailboxes.ps1”

 

This movemailboxes.ps1 can be run from the any location but it will be good if we save this file in “C:\Program Files\Microsoft\Exchange Server\Scripts”

Now I guess we have got a fair idea for moving the mailbox from EMC and bulk mailboxes from Powershell.

Now lets see how we can move the individual mailboxes by having some customized setting:
1) Moving a individual mailbox
Move-Mailbox happy\trans1 -TargetDatabase "First Storage Group\Mailbox Database"
Note : When you perform mailbox movement from powershell it will ask for confirmation before it start activity (So that we are aware what we are doing)
2) If you want to set the corruption message limit then you follow this command
Move-Mailbox happy\trans2 -TargetDatabase "First Storage Group\Mailbox Database" -BadItemLimit 5

3) Mailbox Size Limit:
When you have mailbox size limit more then target server database then it will fail with an error message stating the quota limitation
Let say you have mailbox quota in Exchange 2003 which is more then the quota you have in Exchange 2007 so basically if we move the mailbox it will fail because it is exceeding the limit. So inorder to preserve it you can follow the below command
 Move-Mailbox happy\trans3 -TargetDatabase "Management\Management" -MailboxSizeLimitOptions PreserveSource (as per the Microsoft)
 But the above command is failed in my case so I tried this command
Move-Mailbox happy\trans3 -TargetDatabase "Management\Management" -Preservemailboxsizelimit

Like this there are many configuration you can do it for moving the mailbox please have a look into this article
http://technet.microsoft.com/en-us/library/aa997961.aspx

This is how you can move the mailbox based upon your requirement.

                                                                        How to Move OAB
1. Start the Exchange Management Console.
2. In the console tree, expand Organization Configuration, and then click Mailbox.
3. In the result pane, click the Offline Address Book tab, and then select the OAB for which you want to move the generation to a new server.
4. In the action pane, click Move. The Move Offline Address Book wizard appears.
5. On the Move Offline Address Book page, click Browse to open the Select Mailbox Server dialog box.
6. Select the server to which you want to move the OAB generation process, and then click OK.
7. Click Move to move the OAB generation process to the new server.
8. View the status of the move operation. The wizard will move the generation of your OAB to the new server and copy the existing files for the OAB to the new server.
9. On the Completion page, confirm whether the OAB generation process was moved successfully. A status of Completed indicates that the wizard completed the task successfully. A status of Failed indicates that the task was not completed. If the task fails, review the summary for an explanation, and then click Back to make any configuration changes.
10. Click Finish to complete the Move Offline Address Book wizard.



Click in the browse and select E2K7 and then click on move



If you want to perform it from powershell follow this command
Move-OfflineAddressBook -Identity "My OAB" -Server SERVER01

I hope this article is being very informative for you all. Thank you for your time and patience for going through this article.

Upcoming article:
In the next article I will show you how to  remove of last legacy Exchange 2003

Transition from Exchange 2003 to Exchange 2007 : Removal of last legacy Exchange 2003 - Part4

Related Articles:
Transition from Exchange 2003 to Exchange 2007 : Upgrading Exchange 2003 to Exchange 2007 Part-1
Transition from Exchange 2003 to 2007: Installation of Exchange 2007-Part2


Reference:
Upgrading to Exchange 2007
Transitioning from Exchange 2000/2003 to Exchange Server 2007
Move Mailboxes From Exchange 2003 to Exchange 2007




 del.icio.us  Stumbleupon  Technorati  Digg 

 

What did you think of this article?




Trackbacks
  • Trackbacks are closed for this entry.
Comments

Leave a comment

Submitted comments will be subject to moderation before being displayed.

 Enter the above security code (required)

 Name (required)

 Email (will not be published) (required)

 Website

Your comment is 0 characters limited to 3000 characters.