To resolve this issue, re-create the SystemMailbox user
object by using one of the methods in the "Re-create SystemMailbox" section. If
you receive error code 0x8007007e in event ID 116, you must also perform the
steps that are described in the "Register the exodbprx.dll component" section.
Re-create SystemMailbox
Method 1
- Create a new mailbox store on the server.
- Move all mailboxes from the original store to the new
mailbox store that you created in step 1.
- Remove the original mailbox store.
Method 2
Only use this method if Method 1 does not work. If you remove an Exchange database, any event sinks that were registered against the database may no longer work. For example, event sinks such as Auto Accept Agent, ExQMS, or any third-party event sinks that register their information in the SystemMailbox will no longer work.
Important
Before you start this procedure, make sure that no one is logged on to
a mailbox from any client. Additionally, make sure that no one logs on while
you perform this procedure. These actions prevent new user connections or
incoming e-mail from creating mailboxes in the temporary store between steps 6
and 7. You may want to consider unplugging the server from the network to
prevent people from accidentally logging on.
- In Exchange System Manager, locate the following folder:
First Administrative Group/Servers/Server Name/Protocols/SMTP
The Default SMTP Virtual Server is in the SMTP folder. - Right-click the Default SMTP Virtual
Server, and then click Stop to prevent mail flow
while the temporary store is up.
- Stop the Microsoft Exchange Information Store
service.
- From Windows Explorer, rename the Mdbdata folder that holds
the database. Additionally, rename the folder that contains your log files.
Then, create a new, empty Mdbdata folder.
- Start the Microsoft Exchange Information Store
service.
- In Exchange System Manager, mount only the mailbox store.
You receive a warning that indicates that you are mounting a blank store. This
is expected. Accept the warning. After the mailbox store mounts, verify that
the SystemMailbox object is created in the Mailboxes folder. The account for
the SystemMailbox is typically re-created in the Microsoft Exchange System
Objects folder in the Active Directory Users and Computers snap-in.
- Stop the Microsoft Exchange Information Store
service.
- In Windows Explorer, change the name of the temporary
Mdbdata folder that you created in step 4. Then, change the name of the
original Mdbdata folder to Mdbdata.
- Start the Microsoft Exchange Information Store service, and
then start the dependant services.
- Verify that the mailbox store and the public folder store
mount as expected. The new SystemMailbox object and the old, disconnected
SystemMailbox object should be in the Mailboxes folder. The old, disconnected
SystemMailbox object is deleted after the deletion-settings period
expires.
- Start the Default SMTP Virtual Server that you stopped in
step 2.
This new mailbox store has a SystemMailbox object that is created after
the new mailbox store has mounted for the first time. However, if the store
that you want to replace contains many mailboxes, or if the server is running
Exchange 2000 Server Standard Edition or Exchange Server 2003, this method may
not be sufficient.
How to manually re-create the SystemMailbox user object
Warning If you use the ADSI Edit snap-in, the LDP utility, or any other
LDAP version 3 client, and you incorrectly modify the attributes of Active
Directory objects, you can cause serious problems. These problems may require
you to reinstall Microsoft Windows 2000 Server, Microsoft Windows Server 2003,
Microsoft Exchange 2000 Server, Microsoft Exchange Server 2003, or both Windows
and Exchange. Microsoft cannot guarantee that problems that occur if you
incorrectly modify Active Directory object attributes can be solved. Modify
these attributes at your own risk.
The following steps re-create the
SystemMailbox{
GUID} Active Directory user account.
This behavior causes the SystemMailbox mailbox object to be re-created in the
mailbox store after you dismount and then remount the affected information
store database.
Note To follow these steps, you must have Microsoft Windows 2000
Support Tools installed. Additionally, you must be familiar with the LDP
utility.
First, use Ldp.exe to determine the ObjectGUID of the
mailbox store. To do this, follow these steps:
- Move to the mailbox store object. You can locate this
object at a distinguished name as shown in the following example:
CN=Mailbox Store (Server), CN=First Storage Group, CN=InformationStore, CN=Server, CN=Servers,
CN=AdminGroup,CN=Administrative Groups,
CN=OrganizationName,CN=Microsoft Exchange,
CN=Services, CN=Configuration, DC=domain, DC=com
- Select and then copy the attribute value for ObjectGUID.
The attribute is in the following format:
0be9b6db-21a5-4d75-aa53-cdfd5e6776f3
After you determine the ObjectGUID of the mailbox store, create
the replacement SystemMailbox{
GUID} object in Active
Directory. To do this, follow these steps:
- Start the Active Directory Users and Computers
snap-in.
- On the View menu, make sure that
Advanced Features is selected.
- Locate the Microsoft Exchange System
Objects container.
- Right-click the Microsoft Exchange System
Objects container, and then create a new user object in this
container.
- Set the Full name and the User
logon name as follows:
SystemMailbox{GUID}
Note that GUID is the GUID of the
mailbox store that you copied from the LDP utility. - Set the pre-Windows 2000 user logon name as the first 20
characters of the GUID. For the example used in this article, the first 20
characters of the GUID are as follows:
0be9b6db-21a5-4d75-a
- Click Next to continue to the password
screen.
- Assign and confirm a long, random password.
- Mark the account as Disabled, and then
click Next.
- Verify that the Create an Exchange Mailbox
check box is selected.
- Ignore the Alias. However, select the correct server and
store values. Then, click Finish.
Note The next two steps are required to prevent the Recipient Update
Service from applying an incorrect e-mail address to this new user. If the
Recipient Update Service is disabled throughout the mailbox creation, these
steps are not required. Remember to re-enable the Recipient Update Service when
the Alias is updated in ADSI Edit. - Right-click the user object that you just created, and then
click Properties.
- Click to clear the Automatically update e-mail
addresses check box, and then click Apply.
Note This step must be completed before the Recipient Update Service
has updated the e-mail address proxies for this new user. - Start ADSI Edit, and then locate the new
SystemMailbox{GUID} user object.
- Right-click the user object, and then click
Properties.
- In the Select a property to view list,
click the mailNickname attribute.
- Replace the mailNickname that is listed with the correct
SystemMailbox{GUID} identifier that you used as the
Full name and the User logon name in step 5 .
Click Set, and then click OK to save this
change. For the example used in this article, the identifier is as follows:
SystemMailbox{0be9b6db-21a5-4d75-aa53-cdfd5e6776f3}
- Make sure that Automatically update e-mail
addresses check box is selected in the Active Directory Users and
Computers snap-in or that the Recipient Update Service is re-enabled.
- Wait for the e-mail addresses to be generated for this new
user object.
- After the user has e-mail addresses defined, confirm that
the e-mail addresses are set to SystemMailbox{GUID}@primary SMTP domain.
- Click the Exchange Advanced tab, and then
click to select the Hide from address lists check
box.
- Click Mailbox Rights, select
Self, and then click to select the Associated external
account check box.
- Click Add, and then add the System
account. Then, grant the System account Read permissions and
Full mailbox user rights.
- Click OK two times to apply these changes
to the user account.
After you create a replacement
SystemMailbox{
GUID} object in Active Directory,
mount and then dismount the affected information store database. The
SystemMailbox{
GUID} mailbox object is created in the
mailbox resources list in Exchange System Manager.
Register the exodbprx.dll component
To register the exodbprx.dll component, follow these steps:
- Open a command prompt on the Exchange server.
- At the command prompt, type the following line, and then
press ENTER:
regsvr32 "C:\Program Files\Exchsrvr\bin\exodbprx.dll"
Note C:\Program Files\Exchsrvr is the
folder where Exchange Server is installed. - Click OK.