Recipe6.8.Dismounting a Database


Recipe 6.8. Dismounting a Database

Problem

You need to dismount a database so you can perform maintenance or integrity checks on it.

Solution

Using a graphical user interface

  1. Launch the Exchange System Manager (Exchange System Manager.msc).

  2. In the left pane, expand the appropriate Administrative Groups container, and then expand the Servers container.

  3. Expand the server that contains the target database, then expand the parent SG.

  4. Right-click the target database and select Dismount Store.

  5. ESM will ask you to confirm the dismount operation; click Yes.

Using VBScript
' This code will dismount the selected mailbox database.  ' ------ SCRIPT CONFIGURATION ------  strServerName = "<serverName>"    ' e.g., "BATMAN"  strMDBName = "<databaseName>"        ' e.g., "Mailbox Store (BATMAN)"  ' ------ END CONFIGURATION --------- Set theServer = CreateObject("CDOEXM.ExchangeServer") Set theMDB = CreateObject("CDOEXM.MailboxStoreDB") theServer.DataSource.Open strServerName arrSG = theServer.StorageGroups theFirstSG = arrSG(0) strURL = "LDAP://" & theServer.DirectoryServer & "/cn=" & strMDBName & "," & theFirstSG theMDB.DataSource.Open strURL theMDB.Dismount WScript.Echo "Database dismounted."

Discussion

Dismounting a database is simple, but it's required before you copy the database files using anything other than the Exchange backup APIs. That's because the dismount process sets a flag in the database header that indicates that the database was cleanly dismounted; if that flag is not there, Exchange will refuse to mount the database again until the header has been repaired with eseutil's /r mode.

Using VBScript

The code only works with mailbox databases because it uses the MailboxStoreDB object from CDOEXM. To make it work with public databases, you need to modify it to use the PublicStoreDB object instead.

See Also

Recipe 6.7 for mounting databases, and Microsoft Technet article "Top 10 Database Mounting Issues and Their Solutions" (http://www.microsoft.com/technet/prodtechnol/exchange/2003/hd.mspx)



Exchange Server Cookbook
Exchange Server Cookbook: For Exchange Server 2003 and Exchange 2000 Server
ISBN: 0596007175
EAN: 2147483647
Year: 2006
Pages: 235

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net