Updating Schema for Exchange 2007 (easily understandable format)

**If you do not know what Schema is, or Exchange 2007 for that matter, do not attempt this. Put your keyboard down and back slowly away from the computer. This post is intended for qualified Exchange Admins only**

Recently, I had cause to go through the various ways of preparing your AD and AD schema for Exchange 2007.

I've broken this process down into two general scenarios, the first where you want to apply all pre-requisite AD and AD schema changes, and then the second where you may want to stage the AD and AD schema changes. I've then further broken down each of the 2 scenarios into 2 cases: single forest/single domain, and single forest/multiple domains. All scenarios assume you are transitioning* an existing Exchange Org to Exchange 2007 from 2003 or 2000. So, to summarize, this post will cover the following scenarios and cases:

"All at once"

-Single Forest, Single Domain

-Single Forest, Multiple Domains

"Staged"

-Single Forest, Single Domain

-Single Forest, Multiple Domains

Here are my notes on preparing schema:

 All at once
Single domain, single forest
setup.exe /preparead (this is what the wizard/gui runs)

Single forest, multiple domains
setup.exe /preparead (or /ad)in root, then - Enterprise admin and schema admin
setup.exe /preparedomains (/pd)-or setup.exe /preparealldomains (/pad) - enterprise rights

Staged:
Single domain, single forest
setup.exe PrepareLegacyExchangePermissions (/pl) -Enterprise admin and schema admin
setup.exe /prepareschema (/ps) -Schema admin
setup.exe /preparead (/ad) - Domain Admin (unless domain created after preparead, then also needs exchange org admin rights)

Single forest, multiple domains
(ROOT)setup.exe PrepareLegacyExchangePermissions (/pl) -Enterprise admin and schema admin
(ROOT)setup.exe /prepareschema (/ps) -requires Schema admin
(ROOT)setup.exe /preparead (/ad) - requires Domain Admin (unless domain created after preparead, then also needs exchange org admin rights)

Then, in each child domain that is hosting:
 -Exchange 2000, Exchange 2003, or Exchange 2007 servers
 -Mail-enabled objects
 -Global catalog servers that Exchange directory access components might use

Run the following:
  -setup /preparedomain (/pd)

Reference:

White Paper: Description of the Parameters Used With the Exchange 2007 Setup.com Tool

https://technet.microsoft.com/en-us/library/bb288906.aspx