Community Pick: Many members of our community have endorsed this article.
Editor's Choice: This article has been selected by our editors as an exceptional contribution.

Google Apps Migration for Microsoft Exchange 2003

Glen KnightLead Techical Consultant


In order to perform a successful migration from Exchange Server 2003 to Google Apps you will require the following:

A Premium or Education Google Apps Account
Exchange 2003 Service Account as per the instructions found here:
Client Computer with Outlook 2003 or 2007
Google Apps Migration for Microsoft® Exchange Tools which can be downloaded from:
A Comma Separated Value (CSV) File with the user's windows username and Google apps username

Once you have signed up for your Premium Google Apps or Education account, the first thing you will need to do is create your user accounts.  This can either be done manually through the control panel by uploading a CSV through the Advanced Tools section.

Once you have created your users there are a few settings that need to be changed in order for the new migration tool to work, these are:

Set the Email Migration API (EMAPI) option
Enable 2-Legged OAuth

Enabling the Email Migration API (EMAPI) option

This is required to allow the Migration to Exchange tool to access the required API’s so that it will function.  To enable this using the Google Apps Control Panel navigate to Advanced Tools and scroll right to the bottom of the page.  Put a check in the box next to Allow users to upload mail using the Email Migration API. (Administrators always have access to this API.)

Enable 2-Legged OAuth

This is similar to a service account in Exchange that allows you to gain access to all mailboxes using a single login (the administrative account).  To configure this using the Google Apps Control Panel navigate to Advanced Tools and under the section titled Authentication click Manage OAuth domain key.  Put a check in the box labelled Enable this consumer key then click Save Changes.  This will generate an OAuth consumer secret make a note of this because it will be required later.

Performing the Migration

I was shocked at how easy the migration was from Microsoft Exchange 2003 to Google Apps.  It’s as simple as 5 easy steps which I will explain below.

The first step is to create a CSV file of the users that you wish to migrate.  If like me your Google Apps username is the same as your Windows usernames then you simply need to create a file with a list of these usernames.  The same is true if the e-mail addresses are the same, simply create a list of e-mail addresses, 1 per line.

If the usernames or e-mail addresses don’t match then you will need to create a CSV that looks like the following:

user1, google_apps_user1
user2, google_apps_user2
user3, google_apps_user 3

or alternatively,,,

Save the CSV file for reference later.

To start the migration we need to launch the Google Apps Migration tool.  Once you launch the tool, click Next on the first screen of pre-requisites and then you will see the screen below.
googleapps-01.jpgOn this screen you need to enter the NETBIOS name of your Exchange Server and then the SMTP domain you have registered with your Google Apps account.  The SMTP domain may well be the same on your Exchange Server and Google Apps, this is normal in a migration scenario.

Once you have entered the required information, click Next.
 googleapps-02.jpgThis screen requires the service account you created earlier.  In my case this is the Administrator account.  By default the Administrator user account will not have service account privileges in Exchange Server 2003.

You will then be required to enter the Consumer key which is normally the domain name you will be migrating to and then the Consumer secret which you would have created in the section above under the heading of Enable 2-Legged OAuth

Once you have entered the required information, click Next.
 googleapps-03.jpgThis screen we need to specify the CSV file we created earlier with our list of usernames that will be migrated.  You have an option to select Migrate all data or just new data.

The main reason I can see this being useful is if you want to migrate all the historical data to the new mailboxes on Google Apps, then move the users over to their new mailboxes and then perform another migration for anything that has changed during the cut over period.

Once you have made your choices, click Next.
 googleapps-04.jpgThe next screen allows us to specify which data from Exchange will be migrated over to Google Apps.  The Migration tool does seem to perform data moves on all the selected mailboxes at the same time which if you don’t have a lot of bandwidth could cause problems.  If this is the case then the Restrict migration to n users at a time would be a very useful option.  Other than this it’s fairly self-explanatory.

Once you have made your choices click Next.
 googleapps-05.jpgThe next screen simply gives confirmation of what we have already entered, the option to edit these settings and probably more importantly the option to save the settings.  This would be especially useful if you will be performing a migration and then a second to pick up the changes.

When you are ready, click Migrate.  This will then start the migration process.
Glen KnightLead Techical Consultant

Comments (0)

Have a question about something in this article? You can receive help directly from the article author. Sign up for a free trial to get started.