Tuesday, September 29, 2009

When SBS Goes Bad - Exchange 2007 Recovery

Like many other small businesses, I use Microsoft Small Business Server. More specifically, SBS 2008 Standard Edition. Being an IT professional, I ALWAYS have a secondary AD server just in case something happens to the SBS server. This past week, my SBS 2008 server crashed! It was pretty nasty. The LDAP authentication was skewed, the kerberos key was skewed. Basically, the only thing that would have saved my tail would have been a system state backup from a month ago. I only kept 15 days.

Fortunate for me, I had the 2nd ad server. So I used some resource tools to remove the metadata for the SBS server, and set the burflags on my ntfrs service to make the sysvol share authoritative for the domain and restarted the ntfrs service. I brought up another 2008 x64 server and installed Exchange 2007 on it. I created a restore group and restored my SBS exchange database. I moved over the configuration data in AD to point to the new exchange server. Unfortunatly, the database I restored would not mount. I was receiving the error: MapiExceptionCall Failed 0x080004005 ec=-511 (I also received 502, 510 on previous tries). I was able to repair the database using eseutil.exe with the /p and /d options. After the passes completed successfully, I was able to mount the database and initiate the merge between the recovery group and the live database for what is referred to as a "dial tone" restore.

All is well now! I ousted the SBS server and went with another virtual AD server and standalone exchange. SBS is no more for me (FOR NOW).